ایک struct ایک value type ہے: assignment پر اس کی copy بن جاتی ہے، اور ہر copy الگ اور خودمختار ہوتی ہے۔ ایک class ایک reference type ہے: assignment ایک ہی instance کو share کرتا ہے، اور دونوں variables اسی ایک object کی طرف اشارہ کرتے ہیں۔ یہی واحد فرق Swift میں زیادہ تر design فیصلوں کو چلاتا ہے۔
یہ کیسے کام کرتا ہے
{ x: }
{ x: ; (: ) { .x x } }
a (x: )
b a
b.x
(a.x, b.x)
c (x: )
d c
d.x
(c.x, d.x)
