定義
インスタンス変数は定義した共通のクラス内のみ利用可能
ローカル変数は定義した範囲のみ
疑問
インスタンス変数はクラス内のみと書いてありますが
https://gyazo.com/582376fcc249a3b0f0ac6bf833c1926e
このようにクラス外でも使われています。
クラスとはcontrolerなどで
class
end
のように書いてある範囲なのでなぜインスタンス変数がクラス外で使われているのかがわかりません。
またもう一つも質問は
controllerでよく見ることなんですが
@user = User.find(params[:id])
@user = User.new
の@userのように同じインスタンス変数に代入していますが値はどうなっているんですか?
僕は変数には一つの値しか入らないと思っているので後から代入した.newだと思うんですが、、、
まとめますと
インスタンス変数はクラス内しか使えないと書いてあるのになぜクラス外で使っているのか?
インスタンス変数の中にはいくつも値が代入できるのか?
です。
回答待ってます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/20 05:55
2020/07/20 07:51