Я получаю нечетную ошибку, указывающую, что двоичный оператор '-' не может применяться к двум операндам CGPoint в моей новой версии приложения, которое я разрабатываю. Это очень сложно, поскольку я знаю, что он может применяться, поскольку я использовал ту же строку кода в предыдущей сборке этого приложения. Я попытался разрешить ошибку, переписав проект и получив ту же проблему. Строка кода, которая вызывает проблемы как таковой:Проблема с двоичным оператором '-'
func updateRKnobWithPosition(position:CGPoint) {
var positionToCenter = position - baseCenter
var direction: CGPoint
if positionToCenter == CGPointZero {
direction = CGPointZero
} else {
direction = positionTOCenter.normalized()
}
...
delegate?.analogRControlPositionChanged(self, position: relativePosition)
}
где relativePosition является CGPoint в классе.
Может ли кто-нибудь сказать мне, где я ошибаюсь. Если это не мой код, это имеет какое-то отношение к Xcode?
Благодаря
Если вы не работаете на Obfuscated Swift Code Contest, вы должны называть этот оператор '-', а не' + ':) –
@MartinR вскрытая ромашка. Исправлено и обновлено. Приветствия. –
Существует библиотека функций оператора, которая содержит все операторы, необходимые для правильной работы аналогового управления, что также было включено в предыдущую сборку. Когда я пытаюсь выполнить решение, которое вы предоставили iosDev82, я получаю ошибки компилятора: ожидаемое объявление (в строке func), операторы разрешены только в глобальной области, а последовательные объявления в строке должны быть разделены символом ';'. –