暇つぶし2chat TECH - 暇つぶし2ch■コピペモード□スレを通常表示□オプションモード□このスレッドのURL■項目テキスト950:>>872 (ワッチョイ ab90-Mt2S) 17/03/08 20:08:48.74 wRk+GbAW0.net >>929 拡張メソッドでthisに指定しているものは触ることはできないけど、this指定のpublicなメンバなら触ることができる こういった解釈で間違いないですか? 配列は問題なくできますが、それはどういった理由からですか?配列の要素もメンバ扱いなのでしょうか? 951:デフォルトの名無しさん (ワッチョイ aba0-PBd5) 17/03/08 20:11:40.47 jS0zQn/F0.net 死ね低脳 畑でも耕してろ 952:デフォルトの名無しさん (ワッチョイ 1f23-2BvX) 17/03/08 21:17:35.55 CceDL3fb0.net >>934 まぁ有り体に言えばそうなんだけど、拡張メソッドとかthisとか、もはやこの際関係ないんだ まず値型を考える。int i = 0;のとき、変数「i」は4バイトで値0という実体がそのまま入る 次に参照型、Myclass myclass = new Myclass();だと変数myclassには実体へのアドレスが入る そこまでは理解していると思うけど、メソッドに渡された時、通常はどちらも値渡しなんだよ 値型だと内容が引数にコピーされるのは勿論、参照型も変数の中身=実体アドレスが渡されるだけ なぜ参照型のメンバのみ元に反映されるか、それは実体アドレスを介した間接参照になって同じ場所を指すから だけど参照型の引数自体に割り当てても、それは引数が指すものが変わるだけで、元のmyclassが指す場所は変わらない refやoutで(実体もしくは実体アドレスではなく)変数のアドレスが渡されることで初めて呼び出し元の変数自体を変えられる 次ページ最新レス表示レスジャンプ類似スレ一覧スレッドの検索話題のニュースおまかせリストオプションしおりを挟むスレッドに書込スレッドの一覧暇つぶし2ch