□投稿者/ フミ (10回)-(2008/12/02(Tue) 19:22:35)
|
分類:[C#]
配列のコピーに関して基本的な質問があります。
以下のプログラムのようにフィールドで宣言した配列abcに
メソッド内で宣言したローカルな配列defをイコールで結んでやると、
(abc = def のようにすると)
たぶん、defの参照がabcにコピーされると思うのですが、
メソッド終了時点でローカル配列defが消滅して、
結局abcの参照先がなくなってしまうのでしょうか???
実際に動かしてみると、値はしっかりと参照できてはいたのですが。。。
ただ偶然うまくいっただけでしょうか?
以下プログラム
class aaa
{
int[] abc = new int[3] { 0, 1, 2 };
private void xyz()
{
int[] def = new int[3] { 6, 7, 8 };
abc = def;
}
}
|
|