memberwiseclone是否复制DateTime,还是必须显式设置?

时间:2013-08-22 15:27:15

标签: c# .net icloneable

我正在对大量自定义对象实施ICloneable。某些对象的类型为DateTime,这是一个struct值。我知道可以使用newDateTime = oldDateTime复制此值,但如果我在对象上使用MemberwiseClone(),它是否会自动复制DateTime个对象?我假设不是因为DateTime本身没有实现ICloneable

2 个答案:

答案 0 :(得分:5)

DateTime是一种值类型,例如int。因此,它将被MemberwiseClone()复制。

答案 1 :(得分:3)

由于DateTime是值类型,因此将复制它。

Object.MemberwiseClone Method - MSDN

  

MemberwiseClone方法通过创建新的方法来创建浅表副本   对象,然后将当前对象的非静态字段复制到   新的对象。 如果字段是值类型,则逐位复制   字段已执行。如果字段是引用类型,则引用为   复制但引用的对象不是;因此,原始对象   它的克隆引用同一个对象。