自分の知識のいくつかのギャップを解消したい。これから。
例 (c#):
List<Person> names = new List<Person>();
Person friend = null;
for(int i = 0; i < 5; i++)
{
friend = new Person();
Person guy = new Person();
guy.name = "Bob" + i;
friend.name = "Bill" + i;
names.Add(guy);
names.Add(friend);
}
ここでは、スペースを節約するために、同じループで 2 つの Person オブジェクトを使用しています。
友人をインスタンス化するたびに、メモリ内の同じ場所を再利用し、存在する場合は既存の Person オブジェクトを上書きすることを理解しています。
一方、新しい「男」オブジェクトにはそれぞれ、新しいメモリの場所が割り当てられます。
これが正しい場合、これが間違っている場合は修正してください。これは、「guy」よりも「friend」を使用する方がメモリ効率が高いことを意味します。
「男」の方がいいというケースはありますか?コンストラクタの実装に依存する可能性はありますか?