Как добавить в список копию объекта?

Моя проблема заключается в том, что если добавить объект в список, а затем изменить объект в списке изменится и старый объект, т.е. он работает как ссылка. На данный момент мой код работает, но мне приходится передавать все значения старого объекта новому и добавлять этот новый объект.


Stat newStat = new Stat();

//передаю все значения объекта
newStat.factor = oldStat.factor;
newStat.maxValue = oldStat.maxValue;
newStat.minValue = oldStat.minValue;
newStat.modifiers = oldStat.modifiers;
newStat.statType = oldStat.statType;
newStat.value = oldStat.value;

stats.Add(newStat);

Можно передать быстрее через конструктор, но когда переменных в классе становится больше, это становится неудобно, к тому же не рекомендуется делать больше 2-3 параметров. Есть ли более правильный и простой способ?


Ответы (0 шт):