我刚开始学习Swift并遇到了函数类型以及如何返回它们。我只是想知道()
在函数calcDecrement
的返回值中的含义是什么?我知道该函数返回对内部函数decrementer
的引用,那么函数的()
返回类型是什么?
func calcDecrement(forDecrement total: Int) -> () -> Int {
var overallDecrement = 0
func decrementer() -> Int {
overallDecrement -= total
return overallDecrement
}
return decrementer
}
let decrem = calcDecrement(forDecrement: 30)
print(decrem())
答案 0 :(得分:6)
() -> Int
是返回类型,它表示不带参数的函数,并返回Int
作为结果。
decrementer
完全匹配,因此返回函数很好。
如果返回类型使用Int
作为参数,则返回类型为(Int) -> Int
。
有关函数类型的更多详细信息,请参阅The Swift Programming Language上的Apple文档。