如何在没有任何引用的情况下创建类对象的副本?ICloneable制作一个类对象的副本(通过浅拷贝),但不支持深度复制.我正在寻找一个足够智能的函数来读取类对象的所有成员,并在不指定成员名称的情况下对另一个对象进行深层复制.
我已经将此视为一种解决方案,基本上编写自己的函数来执行此操作,因为您所说的 ICloneable 不进行深层复制
public static T DeepCopy(T other)
{
using (MemoryStream ms = new MemoryStream())
{
BinaryFormatter formatter = new BinaryFormatter();
formatter.Serialize(ms, other);
ms.Position = 0;
return (T)formatter.Deserialize(ms);
}
}
Run Code Online (Sandbox Code Playgroud)
我正在参考这个线程。 复制一个类,C#