[[Ruby]]
C#とかでクラスを使ってたあなた、これで困ったことないですか?
ほら、C#ならこんな時。
class A{
public string abc;
public string def;
}
:
A o = new A();
o.abc = "ふがほげ";
o.def = "じぇーんどぅ";
上のコードをRubyで書こうとして、以下のように書くとエラーになるのよね。
class A
def initialize
@abc = nil
@def = nil
end
end
:
o = A.new
o.abc = "ふがほげ" ←ここでエラーになる。
o.def = "じぇーんどぅ"
これを可能にするには、以下をclassの中に追加するのよ。
attr_accessor :abc,:def
これで、以下のように書けるわ。
class A
def initialize
@abc = nil
@def = nil
end
attr_accessor :abc,:def
end
:
o = A.new
o.abc = "ふがほげ"
o.def = "じぇーんどぅ"
実は前にこれ知らなくて大変な目にあったのよね……''わざわざ@abcにセットするメソッド書いた''りね。なんてこと。
みんなは、ひっかかってはダメよ。