array2 = array1 やってみました。 関数に渡したときと同じことが起きてるように見えます。 つまり、array2 = array1でarray2はarray1の参照になり、array2を変更しようとした時点でコピーされ別の配列になる。
array2 = array1
array1 = ["dog", "cat", "fox"]; array2 = array1; show_debug_message("(1) array1 = "+string(array1)); show_debug_message("(1) array2 = "+string(array2)); array2[1] = "123"; // ★1 show_debug_message("(2) array1 = "+string(array1)); show_debug_message("(2) array2 = "+string(array2));
結果 (1) array1 = [ "dog","cat","flower" ] (1) array2 = [ "dog","cat","flower" ] (2) array1 = [ "dog","cat","flower" ] (2) array2 = [ "dog","123","flower" ] array2だけが変更されている。ということはコピーされていてarray1とarray2は別の配列になっていると見ることができる。
★1の部分を array2[@ 1] = "123"; にすると、 結果 (1) array1 = [ "dog","cat","flower" ] (1) array2 = [ "dog","cat","flower" ] (2) array1 = [ "dog","123","flower" ] (2) array2 = [ "dog","123","flower" ] array1とarray2が両方変わっている array2はarray1の参照のままであり、array2[@ 1]でarray1[1]を直接変更したと考えられる。
★1の部分を array1[1] = "123"; にすると、 結果 (1) array1 = [ "dog","cat","flower" ] (1) array2 = [ "dog","cat","flower" ] (2) array1 = [ "dog","123","flower" ] (2) array2 = [ "dog","123","flower" ] array1とarray2が両方変更されている array2はarray1の参照であるからarray1の内容を示していると考えられる。
不適切なコンテンツとして通報するには以下の「送信」ボタンを押して下さい。 管理チームへ匿名通報が送信されます。あなたが誰であるかを管理チームに特定されることはありません。
どのように不適切か説明したい場合、メッセージをご記入下さい。空白のままでも通報は送信されます。
通報履歴 で、あなたの通報と対応時のメッセージを確認できます。
マニュアル(ver2~2.2.x) マニュアル(ver2.3~) YoYoGames YoYoGames 公式コミュニティ GM関連のYoutubeチャンネル集 解説・資料サイト集(日本語) 解説・資料サイト集(英語)
array2 = array1
やってみました。
関数に渡したときと同じことが起きてるように見えます。
つまり、
array2 = array1でarray2はarray1の参照になり、array2を変更しようとした時点でコピーされ別の配列になる。結果
(1) array1 = [ "dog","cat","flower" ]
(1) array2 = [ "dog","cat","flower" ]
(2) array1 = [ "dog","cat","flower" ]
(2) array2 = [ "dog","123","flower" ]
array2だけが変更されている。ということはコピーされていてarray1とarray2は別の配列になっていると見ることができる。
★1の部分を array2[@ 1] = "123"; にすると、
結果
(1) array1 = [ "dog","cat","flower" ]
(1) array2 = [ "dog","cat","flower" ]
(2) array1 = [ "dog","123","flower" ]
(2) array2 = [ "dog","123","flower" ]
array1とarray2が両方変わっている
array2はarray1の参照のままであり、array2[@ 1]でarray1[1]を直接変更したと考えられる。
★1の部分を array1[1] = "123"; にすると、
結果
(1) array1 = [ "dog","cat","flower" ]
(1) array2 = [ "dog","cat","flower" ]
(2) array1 = [ "dog","123","flower" ]
(2) array2 = [ "dog","123","flower" ]
array1とarray2が両方変更されている
array2はarray1の参照であるからarray1の内容を示していると考えられる。