Копирование структур
Структуры одинаковых типов можно копировать друг в друга целиком с помощью оператора присваивания '='. Продемонстрируем данное правило на примере структуры Result. Первый экземпляр r мы получаем из функции calculate.
void OnStart()
|
Затем дополнительно была создана переменная Result r2, и в неё продублировано содержимое переменной r, всех полей одновременно. В правильности операции можно убедиться по выводу в журнал с помощью метода print (строки приведены в комментариях).
Следует отметить, что определение двух типов структур с одинаковым набором полей не делает их типы одинаковыми. Присвоить одну из них другой целиком нельзя, а только поэлементно.
Чуть позже мы поговорим о наследовании структур, которое предоставляет расширенные возможности для копирования. Дело в том, что копирование работает не только между структурами одного и того же типа, но и между родственными типами. Однако там есть важные нюансы: мы рассмотрим их в разделе Компоновка и наследование структур.