В следующем примере раскрывается пример, приведенный в этой ссылке swift-evolution, в котором описывается только один параметр для списка аргументов. Любое предложение о том, как исправить список аргументов с двумя параметрами?Как исправить эту футлярную функцию в Swift?
// Before: (yields warning)
func curried(x: Int)(y: String, z:String) -> Float {
return Float(x) + Float(y)! + Float(z)!
}
// After: (this is not working)
func curried(x: Int) -> (String, String) -> Float {
return {(y: String, z: String) -> Float in
return Float(x) + Float(y)! + Float(z)!
}
}
Xcode 7.3 еще сообщает второй метод, как «синтаксис Curried функция объявления будут удалены в будущей версии Swift, используйте один список параметров.»
Любая помощь приветствуется.
Невозможно воспроизвести. Второй метод компилируется без предупреждений и работает как ожидалось в Xcode 7.3. –
@MartinR В 7.3 есть ошибка, в которой предупреждение не исчезает, даже когда код исправлен. Вероятно, он вставил в первой версии, получил предупреждение, заменил его второй версией и получил ошибку, где осталось прежнее предупреждение. Отсюда мой ответ ниже. – matt