エントリーの編集
エントリーの編集は全ユーザーに共通の機能です。
必ずガイドラインを一読の上ご利用ください。
getter/setterがないインスタンス変数に外部からアクセスする - Qiita
記事へのコメント0件
- 注目コメント
- 新着コメント
このエントリーにコメントしてみましょう。
注目コメント算出アルゴリズムの一部にLINEヤフー株式会社の「建設的コメント順位付けモデルAPI」を使用しています
- バナー広告なし
- ミュート機能あり
- ダークモード搭載
関連記事
getter/setterがないインスタンス変数に外部からアクセスする - Qiita
#!/usr/bin/env ruby # -*- coding: utf-8 -*- class Hoge # setterは公開されていない attr_reader :fu... #!/usr/bin/env ruby # -*- coding: utf-8 -*- class Hoge # setterは公開されていない attr_reader :fuga def initialize @fuga = 'fuga' # getter/setter共に公開されていない @hige = 'hige' end end hoge = Hoge.new p hoge.fuga # => "fuga" # インスタンス変数の名前を文字列で指定して # 外から強制的に書き換える name = "@fuga" hoge.instance_variable_set(name, 'fugafuga') if hoge.instance_variable_defined?(name) p hoge.fuga # => "fugafuga" # シンボルでも指定できる hoge.inst