【问题标题】:What is the meaning of the "()" in the return type of function calcDecrement?函数calcDecrement的返回类型中的“()”是什么意思?
【发布时间】:2017-12-17 23:16:36
【问题描述】:

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

【问题讨论】:

  • 不仅仅是(),而是整个() -> Int

标签: swift function


【解决方案1】:

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

decrementer 正好匹配这个,所以作为函数返回就好了。

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

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

【讨论】:

    猜你喜欢
    • 2020-07-03
    • 1970-01-01
    • 2017-12-03
    • 1970-01-01
    • 1970-01-01
    • 2020-05-12
    • 2023-02-11
    • 2018-07-10
    • 1970-01-01
    相关资源
    最近更新 更多