我完全不知道下面 Swift 操场代码示例中的 addTwoNumbers 函数如何将“(+)”作为 (Int, Int) -> Int 类型的函数返回,然后通过简单地调用成功地将两个数字相加“addTwoNumbers(2,2)”。
我无法在 Swift 文档中找到解释,因为那里似乎没有这种创造性的解决方案。我已经看到 StackOverflow 的答案发布了类似的代码作为其他问题的答案,但从未解释过为什么“= (+)”有效。我错过了什么?
请注意:我理解运算符是一类函数。我也理解高阶函数的概念。我缩短了代码示例以保持主题,即 (+)。
let addTwoNumbers: (Int, Int) -> Int = (+)
print(addTwoNumbers(5,3)) //8