gpt4 book ai didi

c# - 如何在没有任何引用的情况下创建类对象的副本?

转载 作者:太空狗 更新时间:2023-10-29 23:25:51 25 4
gpt4 key购买 nike

如何在没有任何引用的情况下创建类对象的副本? 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);
}
}

我正在引用这个线程。 copy a class, C#

关于c# - 如何在没有任何引用的情况下创建类对象的副本?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7768397/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com