Управление памятью (ARC)

Структуры управляются автоматически через подсчёт ссылок (ARC) — писать free/delete не нужно, память освобождается сама, когда на объект больше никто не ссылается.

Текст частично под управлением ARC — простые локальные переменные, цепочки конкатенации, результаты некоторых функций и **текстовые поля структур** отслеживаются и освобождаются автоматически.

⚠️ Как именно устроено для полей структур: каждое текстовое поле, при записи (в конструкторе или прямым присваиванием `объект.поле = ...;`), автоматически получает свою собственную копию переданного текста — независимо от того, был это литерал ("Аня") или уже готовое, вычисленное значение. Это гарантирует, что структура всегда владеет содержимым своего текстового поля и может безопасно освободить его при уничтожении — за счёт одного лишнего копирования памяти при каждой записи такого поля.

Переприсваивание внутри циклов тоже корректно отслеживается — решение "освобождать ли старое значение" принимается в рантайме через скрытый флаг владения, а не один раз при компиляции (см. подробности в ИСТОРИЯ_РАЗРАБОТКИ.md). Полный, честный список того, что ещё не покрыто — в разделе "Известные ограничения" выше.