Вопрос проверяет понимание модели памяти value types в Swift и того, как компилятор вычисляет размер типа.
Короткий ответ
Структура не может хранить саму себя напрямую, потому что тогда ее размер стал бы бесконечным. Компилятор должен знать размер типа на этапе компиляции, чтобы выделять память. Если внутри структуры лежит такая же структура, то внутри снова лежит такая же структура и так далее. Поэтому прямое самосодержимое запрещено. Разрешается только косвенная ссылка, например через Optional, class или indirect enum.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.