0
如何得到錯誤NoMethodError: undefined method '+' for nil:NilClass
但帶有puts test
的行打印出1,因此我們知道該值已初始化?即使不使用@也不能總是訪問實例變量的值,即使使用attr_accessor
class TestClass
attr_accessor :test
def initialize()
@test = 1
end
def testFn
puts test
test = test + 1
end
end
t = TestClass.new
t.testFn
如果我改變test
到@test
但我想我沒得,如果我有attr_accessor :test
它是常見的有attr_accessor,然後僅在剛剛直接使用值,否則使用自我賦值?或者,人們通常使用自我進行分配和閱讀,以減少混淆,並減少錯過自我的機會? @kallax – user1136342