Ruby でインスタンス変数へのアクセスをラクにする
Ruby
Published: 2019-05-25

やったこと

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