やったこと
Ruby で インスタンス変数へのアクセスについて調べます。
確認環境
$ ruby --version
ruby 2.6.3p62 (2019-04-16 revision 67580) [x86_64-darwin17]
調査
アクセサを自動的に定義するには、attr_accessor を使います。
test.rb
class Sample
attr_accessor :hogehoge
end
s = Sample.new
s.hogehoge = 'init'
p s.hogehoge
出力結果
$ ruby test.rb
"init"
ちなみに
- 「参照するためのメソッド」だけを定義: attr_reader
- 「代入するメソッド」だけを定義: attr_writer
を使います。
参考
- パーフェクトRuby