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

标签 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())

最佳答案

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

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

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

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

关于swift - 函数calcDecrement返回类型中的 "()"是什么意思?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47860395/

相关文章:

c# - 带params的命名参数

ios - 在使用自定义 UITableViewCell 时解决没有自定义 init 方法的问题

struct - 如何为 Struct 成员赋值?

ios - 覆盖 AppDelegate 上的初始化 - 防止代码多次执行

javascript - 基于基本 HTML-Javascript 的表单验证

PHP:从php文件中获取PHP的变量、函数、常量

JavaScript 将 ID 属性添加到另一个创建的元素

swift - (Swift) 如何从另一个 View Controller 访问将​​某些内容分配给 ViewController 的 navigationItem?

ios - 快速从 firebase 读取数据但无法显示。可能是变量作用域错误

list - Clojure 列表成员转换错误