"()"是什么意思?在函数calcDecrement的返回类型中?

时间:2017-12-17 23:16:37

标签: swift function

我刚开始学习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())

1 个答案:

答案 0 :(得分:6)

() -> Int是返回类型,它表示不带参数的函数,并返回Int作为结果。

decrementer完全匹配,因此返回函数很好。

如果返回类型使用Int作为参数,则返回类型为(Int) -> Int

有关函数类型的更多详细信息,请参阅The Swift Programming Language上的Apple文档。