問題:
リストに複数の項目を追加すると、すべてのリスト項目が最後に追加された項目の値で上書きされます。 これは、アイテムの初期値に関係なく発生します。
原因:
解決策:
この解決策には、反復ごとに新しいオブジェクト インスタンスを作成することが含まれます。
<code class="language-csharp">foreach (string t in tagList) { Tag _tag = new Tag(); // New Tag object for each iteration _tag.tagName = t; tags.Add(_tag); }</code>
代替: 構造体の使用
クラスから構造体に切り替えると、次の理由により上書きの問題が解消されます。
Add
操作では、新しい構造体インスタンスが作成され、一意の値が維持されます。以上が複数のオブジェクトを追加するとリスト項目が上書きされるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。