Вопрос проверяет понимание value-семантики и правил изменения состояния структур в Swift.
Короткий ответ
mutating нужен, чтобы разрешить изменение свойств структуры внутри метода.
По умолчанию методы структур не могут менять self.mutating явно показывает, что метод изменяет состояние.
Это делает код безопаснее и понятнее.
Длинный ответ
Зарегистрироваться
Развернутый ответ доступен только зарегистрированным пользователям.