函数calcDecrement的返回类型中"()"的含义是什么?

Sri*_*har 3 function swift

我刚开始学习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())
Run Code Online (Sandbox Code Playgroud)

Gar*_*kin 6

() -> Int是返回类型,它表示一个不带参数的函数,并返回一个Int结果.

decrementer 完全匹配,所以它作为一个返回的函数是好的.

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

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