Вход на сайт
Резюме для программиста
89957 просмотров
Перейти к просмотру всей ветки
в ответ Murr 19.10.21 17:25, Последний раз изменено 19.10.21 18:28 (alex445)
И что, действительно не знаешь какой?
Ну посмоатри тут:
https://referencesource.microsoft.com/#mscorlib/system/col...
Я и без подгляда думал, что первый добавленный.
Ок, добавляет он по порядку, и если передаёшь ссылочный тип по значению, то создаются копии одной и той же ссылки - т.е. все копии ссылаются на один и тот же ссылочный тип.
My item = new();
list.Add(item);
list.Add(item);
list.Add(item);
А вот теперь удаление объектов.
list.Remove(item);
list.Remove(item);
list.Remove(item);
Почему после этого список оказывается пустым? Ведь мы удаляем один и тот же объект, и он каждый раз удаляется успешно, хотя мы уже удалили его при первом Remove.