我正在尝试在 ruby 中初始化一个单例。这是一些代码:
class MyClass
attr_accessor :var_i_want_to_init
# singleton
@@instance = MyClass.new
def self.instance
@@instance
end
def initialize # tried 1. initialize, 2. new, 3. self.initialize, 4. self.new
puts "I'm being initialized!"
@var_i_want_to_init = 2
end
end
问题是初始化从未被调用,因此单例从未被初始化。我尝试将init方法命名为initialize、self.initialize、new和self.new。没有任何效果。“我正在初始化”从未打印过,并且在我实例化时变量从未初始化
my_var = MyClass.instance
如何设置单例以使其初始化?帮助表示赞赏,
帕春