Как сделать копию объекта без какой-либо связи между ними - C#
Формулировка задачи:
Есть следующий код:
Как сделать так чтобы CanMatrix не была ссылкой на Matrix? Совсем не въезжаю, всё перепробывал.
class Class1 { public int[][] Matrix; public int[][] CanMatrix; public Class1() { Matrix = new int[1][]; Matrix[0] = new int[1] { 0 }; CanMatrix = Matrix; Console.WriteLine(CanMatrix[0][0]); //Write 0 Matrix[0][0] = 7; Console.WriteLine(CanMatrix[0][0]); //Write 7 } }
Решение задачи: «Как сделать копию объекта без какой-либо связи между ними»
textual
Листинг программы
public static T DeepCopy<T>(T other) { using (MemoryStream ms = new MemoryStream()) { BinaryFormatter formatter = new BinaryFormatter(); formatter.Serialize(ms, other); ms.Position = 0; return (T)formatter.Deserialize(ms); } }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д