C # Автоматическая глубокая копия структуры

У меня есть структура,MyStruct, который имеет частного членаprivate bool[] boolArray; и методChangeBoolValue(int index, bool Value).

У меня есть класс,MyClass, что имеет полеpublic MyStruct bools { get; private set; }

Когда я создаю новый объект MyStruct из существующего, а затем применяю метод ChangeBoolValue (), массив bool в обоих объектах изменяется, потому что ссылка, а не то, на что ссылались, была скопирована в новый объект. Например:

MyStruct A = new MyStruct();
MyStruct B = A;  //Copy of A made
B.ChangeBoolValue(0,true);
//Now A.BoolArr[0] == B.BoolArr[0] == true

Есть ли способ заставить копию реализовать более глубокую копию, или есть способ реализовать это, у которого не будет той же проблемы?

Я специально сделал MyStruct структурой, потому что это был тип значения, и я не хотел, чтобы ссылки распространялись.

Ответы на вопрос(5)

Ваш ответ на вопрос