weak — optional ссылка на класс без увеличения retain count; при освобождении объекта автоматически становится nil.
Разбор
- Только для class types.
- Всегда
var optional.
- Безопаснее
unowned при неопределённом lifetime.
- Используется в делегатах, кэшах, capture list.
Итог
weak предотвращает удержание объекта и обнуляется автоматически.