2013-08-22 2 views
2

Я реализую ICloneable на тонне пользовательских объектов. Некоторые объекты имеют тип DateTime, который является значением структуры. Я знаю, что это значение можно скопировать с помощью newDateTime = oldDateTime, но если я использую MemberwiseClone() на моем объекте, он автоматически копирует объекты DateTime? Я предполагаю, что не потому, что DateTime не реализует ICloneable.Выполняет ли memberwiseclone дату DateTime или должен быть явно установлен?

ответ

5

DateTime - тип значения, например int. Таким образом, он будет скопирован элементом MemberwiseClone().

+0

Спасибо, я приму ваш ответ, когда это позволит мне – Magn3s1um

3

С DateTime - тип значения, он будет скопирован.

Object.MemberwiseClone Method - MSDN

Метод MemberwiseClone создает неполную копию путем создания нового объекта , а затем копирование нестатические полей текущего объекта новый объект. Если поле является типом значения, выполняется побитовая копия поля . Если поле является ссылочным типом, ссылка копируется, но указанным объектом нет; поэтому исходный объект и его клон относятся к одному и тому же объекту.

Смежные вопросы