Копия структуры меняется при изменении оригинала - C#

Узнай цену своей работы

Формулировка задачи:

Есть структура. Хочу сделать ее резервную копию, создаю структуру такого же типа и присваиваю ей значение первоночальной структуры. Далее провожу действие, которое меняет первоночальную структуру, однако, при проверке, обнаруживается, что "резервная" структура тоже меняется. Структура же не ссылочный тип, почему так происходит?
           Field field = new Field();
           field.Create();
           ..... 
 
            Field field2 = field;
            field.smthfunc(...);

Решение задачи: «Копия структуры меняется при изменении оригинала»

textual
Листинг программы
        struct MyStruct
        {
            public void Init()
            {
                bar = 0;
            }
 
            public int bar;
        }
 
        static void Main(string[] args)
        {
            MyStruct a, b;
            a = new MyStruct();
            a.Init();
            a.bar = 0;
            b = a;
            a.bar = 2;
            Console.WriteLine("{0} \t{1}", a.bar, b.bar);
            Console.ReadKey();
        }

ИИ для рефератов и докладов


  • Экспорт Word по ГОСТу
  • Минимум 80% уникальности текста
  • Поиск релевантных источников в интернете
  • Готовый документ за 2 минуты

Оцени полезность:

11   голосов , оценка 3.818 из 5
Похожие ответы