Это невозможно - как указано в документации :
Невозможно перегрузить оператор присваивания по умолчанию (=). Только сложные операторы присваивания могут быть перегружены. Аналогично, тернарный условный оператор (a? B: c) не может быть перегружен.
blockquote>Если это вас не убеждает, просто смените оператор на
+=
:func += (inout left: CGFloat, right: Float) { left = CGFloat(right) }
, и вы заметите, что больше не получите ошибку компиляции.
Причина ошибочного сообщения об ошибке, вероятно, связана с тем, что компилятор интерпретирует вашу попытку перегрузки как назначение
Я тоже сталкиваюсь с ошибкой. Я попытался с другим подходом, но решить его только путем создания подпапки.