タグ

2013年10月5日のブックマーク (1件)

  • 初心者が混乱しやすいRubyの変数 | gam0022.net

    はじめに Rubyの初心者にありがちなことだと思うが、 変数を代入した時や関数を呼び出した時に、値渡しであるか参照渡しであるか混乱すると思う。 私もよくわからずにかつては混乱した。 次のページを見つけてようやく頭の整理がついた。 Rubyのメソッドの引数は値渡しで、Rubyの変数は全てオブジェクトを指し示すポインタに似た何かだと考えればよいのだ。 引数の参照渡し(変数渡し)なのか単なるオブジェクトへの参照なのか、それが問題 なるほどわかりやすい。 Rubyのメソッドの引数は値渡し Rubyの変数は全てオブジェクトを指し示すポインタに似た何か Rubyの変数はラベル Cにおける変数は箱だと例えられるが、Rubyにおける変数はラベルと例えられることがある。 Cの変数では、メモリ上の箱に値がそのまま入っている。代入をすれば、箱が複製される。 一方、Rubyではメモリ上の箱のどこかに値が入っており

    初心者が混乱しやすいRubyの変数 | gam0022.net