gpt4 book ai didi

Ruby 单例 attr_accessor

转载 作者:数据小太阳 更新时间:2023-10-29 08:20:33 24 4
gpt4 key购买 nike

我正在尝试创建一个包含 Singleton 的类使用 attr_accessor 时的模块。但这似乎不起作用。

require 'singleton'

class Foo
attr_accessor :bar
include Singleton
end

Foo.bar = 'foobar'

这给出了错误:

undefined method `bar=' for Foo:Class (NoMethodError)

我在这里做错了什么?

最佳答案

Singleton 不会改变 attr_accessor 的工作方式。它只确保您只能拥有一个实例。因此,您必须在特征类中调用 attr_accessor,就像没有 Singleton 时一样。

class Foo
singleton_class.class_eval{attr_accessor :bar}
end

关于Ruby 单例 attr_accessor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17549320/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com