C#のListのデータ代入は、参照渡しで行われる。
頭で分かっているつもりでも、感覚的にプログラミングしてバグに繋がる。
代入先のListの値を変更した後、代入元のListの元の値のまま使用する場合は要注意。
Listコンストラクターを使う。
List<string> listX = new();
listX = new List<string>(listA);
cf.) List<T> コンストラクター (System.Collections.Generic) | Microsoft Learn
コメント