gpt4 book ai didi

c# - 如何制作数组的浅拷贝?

转载 作者:IT王子 更新时间:2023-10-29 04:45:19 24 4
gpt4 key购买 nike

我将一个二维数组作为属性传递给我的用户控件。我将这些值存储在另一个二维数组中:

int[,] originalValues = this.Metrics;

稍后,我更改了 this.Metrics 中的值。但是现在,如果我从 originalValues 中检索值,我会从 this.Metrics 中获取更改后的值。如何复制 this.Metrics 的元素而不只是获取数组的引用?

最佳答案

我不知道我从哪里得到的,但这对我来说很管用。

public static class GenericCopier<T>    //deep copy a list
{
public static T DeepCopy(object objectToCopy)
{
using (MemoryStream memoryStream = new MemoryStream())
{
BinaryFormatter binaryFormatter = new BinaryFormatter();
binaryFormatter.Serialize(memoryStream, objectToCopy);
memoryStream.Seek(0, SeekOrigin.Begin);
return (T)binaryFormatter.Deserialize(memoryStream);
}
}
}

关于c# - 如何制作数组的浅拷贝?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4054075/

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