由于某种原因,此代码将起作用:
class Foo
@foo = "foo"
end
Foo.new.@foo # => "foo"
我看到,这个特性已经在标准库规范中使用了,但它似乎没有被记录。所以,问题是,该功能的状态是什么,应该使用它吗?
由于某种原因,此代码将起作用:
class Foo
@foo = "foo"
end
Foo.new.@foo # => "foo"
我看到,这个特性已经在标准库规范中使用了,但它似乎没有被记录。所以,问题是,该功能的状态是什么,应该使用它吗?
此功能目前用于内部目的,但讨论它以限制对实例变量的外部访问。类似于protected
方法的行为可能很有用。
这个问题是crystal-lang/crystal#6066。
我通常会避免使用此功能,因为它没有文档记录并且很可能在某些时候被更改。