Является ли Enumerable.Repeat() выполняет глубокое копирование?

StackOverflow https://stackoverflow.com/questions/2029246

Вопрос

Если я использую следующее:

  var myList = Enumerable.Repeat(myCustomObject, 2);

Будет ли второй элемент в списке точной копией первого?

Примечание: MyCustomObject может быть любым объектом

Редактировать: Не могли бы вы также, пожалуйста, сообщить мне о потенциальном использовании Enumerable.Повторите при работе с пользовательскими объектами?

Спасибо

Это было полезно?

Решение

Нет, перечислимый.Repeat фактически повторяет точно такую же ссылку в возвращаемом перечислимом - это не копия.(проверяется с помощью отражателя)

-Ойсин

Другие советы

НЕТ, Enumerable.Repeat будет просто повторять ссылку, она не будет создавать копию объекта (если, конечно, это не тип значения)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top