Posted on 2010-02-01 16:29
dennis 閱讀(1053)
評論(2) 編輯 收藏 所屬分類:
動態語言
怎么讓你對象跟Array或者Hash一樣,可以使用[ ]操作符來獲取屬性值或者賦值? 問題其實就是如何定義
index操作符,在Ruby中可以這樣做:
class Message
def initialize
@props=Hash.new
end
def [](key)
@props[key]
end
def []=(key,value)
@props[key]=value
end
end
m=Message.new
m[0]=1
p m[0]
m[:a]="hello"
p m[:a]
注意方法簽名。