我的谷歌糟透了,無法找到關於此的信息。在Ruby中是否有這樣一個常量實例變量?
基本上我想有一個實例變量只在類/模塊的範圍內可見,但也是不可變的。
我是Ruby的新手,並且對這個問題沒有多大意義表示歉意。
我的谷歌糟透了,無法找到關於此的信息。在Ruby中是否有這樣一個常量實例變量?
基本上我想有一個實例變量只在類/模塊的範圍內可見,但也是不可變的。
我是Ruby的新手,並且對這個問題沒有多大意義表示歉意。
class MyClass
def initialize
class << self
FOO=1
end
end
def foo
class << self
FOO
end
end
end
當然,你要使用的方法foo
儘可能讀值。
一個簡單相當於將
class MyClass
def initialize
def foo; 1; end
end
end
紅寶石常量都不是恆定的,它們並不是一成不變的,並且你可以將另一個值給他們,你得到的是一個警告。看到問題Constant Assigment Bug in Ruby?
我爲這種情況寫了一個gem。 http://rubygems.org/gems/instancevalue
(臨近肯的一個。)
當然,常量是不恆定反正在Ruby中。 – 2010-08-02 23:38:33