我最近簽出了Surge框架here的新副本。我成功地將它添加到我們的Xcode項目中,但是我收到以下編譯錯誤。二元運算符' - '不能應用於兩個'[Float]'操作數 - Surge.framework
Binary operator '-' cannot be applied to two '[Float]' operands
我又試圖將它導入到一個新的乾淨的XCode項目,我仍然得到同樣的錯誤。有沒有人看過這個錯誤,並知道修復?或者這是框架本身的問題。
我最近簽出了Surge框架here的新副本。我成功地將它添加到我們的Xcode項目中,但是我收到以下編譯錯誤。二元運算符' - '不能應用於兩個'[Float]'操作數 - Surge.framework
Binary operator '-' cannot be applied to two '[Float]' operands
我又試圖將它導入到一個新的乾淨的XCode項目,我仍然得到同樣的錯誤。有沒有人看過這個錯誤,並知道修復?或者這是框架本身的問題。
你不能在數組上使用二元運算符,這就是你所擁有的。你可以說因爲「浮動」被括號包圍。您只能對單個值使用二元運算符。
var myArray = [Float]() //An array(note the brackets)
myArray.append(15) //myArray now contains one value(15), but you still can't use binary operators on it because its an array.
print(myArray + myArray) //Error
print(myArray[0] + myArray[0]) //prints 30, using this syntax "myArray[0]" represents the first object in the array, 30 in this case.
長話短說,切換到非陣列浮動,如果你不需要一個陣列,或直接訪問,以使用二進制運算符你對它們的排列在你需要的產品。
感謝您的幫助;但這不完全是我的問題。我知道傳統上在陣列上不能使用二元運算符,但Surge框架使用Accelerate框架爲[Float]和[Double]重載二元運算符。考慮到這個庫是非常發達的(請參閱我的文章中的鏈接),我擔心我的XCode配置的某些元素導致此錯誤(因爲'+',' - ','*'和'/'全部在陣列上工作) –
顯然,這是[最近提交](https://github.com/mattt/Surge/commit/f40b3c6a9941dfbc18f4f3bbcdd8a808b0d17286)到Surge庫的監督,你已經[已經](https://github.com)/rprechelt /浪涌/提交/ 5f1e87f3ebb7f5df134d055a95a589bd1c18e709)。 –