Memory Management in Swift (iOS)
This topic outlines how and when the Swift runtime shall allocate memory for application data structures, and when that memory shall be reclaimed. By default, the memory backing class instances is managed through reference counting. The structures are always passed through copying.
Reference Cycles and Weak References
A reference cycle (or retain cycle) is so named because it indicates a cycle in the object graph: