Ruby headscratcher-インスタンス変数は出力されません
-
03-07-2019 - |
質問
おそらく何かバカなことをしているのですが、それが何なのかわかりません。
このプログラムからの出力は次のとおりです
foo
test
私が期待しているのは
foo
abc
test
ここで明らかに間違っているものを見ている人はいますか?
class Foo
def initialize(l)
@label = l
end
def label
@label
end
def abc
@abc
end
def abc=(abc)
@abc
end
end
foo = Foo.new("foo")
foo.abc=("abc")
puts foo.label
puts foo.abc
puts "test"
解決
abc =
メソッドで@abcを設定することはありません。次のようになります
def abc=(val)
@abc = val
end
他のヒント
エラーが何であるかを示すLoganの回答に加えて、最初にエラーが発生することはなかった方法を次に示します。
class Foo
def initialize(l)
@label = l
end
attr_reader :label
attr_accessor :abc
end
所属していません StackOverflow