Ответ 1
Xcode Playgrounds
для Swift не работает, как обычные приложения; они не запускаются только один раз. Созданные объекты остаются в памяти и могут быть проверены до тех пор, пока вы не измените код, после чего вся игровая площадка будет переоценена. Когда это произойдет, все предыдущие результаты будут отброшены, и пока все объекты будут освобождены, вы не увидите никаких результатов.
Ваш код верен, но игровые площадки не подходят для проверки вещей, связанных с управлением памятью.
Вот связанный вопрос SO: Утечка памяти на быстрой игровой площадке /deinit {} не вызвана последовательно