struct — это тип-значение (value type): он копируется при присваивании, и каждая копия независима. class — это ссылочный тип (reference type): присваивание разделяет один экземпляр, и обе переменные указывают на один и тот же объект. Это единственное различие определяет большинство решений при проектировании в Swift.
Как это работает
{ x: }
{ x: ; (: ) { .x x } }
a (x: )
b a
b.x
(a.x, b.x)
c (x: )
d c
d.x
(c.x, d.x)
