如何创建引用特定函数的函数类型的类型

时间:2016-06-19 15:38:16

标签: swift function types

斯威夫特的official Documents

  

您可以像使用Swift中的任何其他类型一样使用函数类型。例如,您可以将常量或变量定义为函数类型,并为该变量分配适当的函数:

func addTwoInts(a: Int, _ b: Int) -> Int {
    return a + b
}

var mathFunction: (Int, Int) -> Int = addTwoInts

示例代码中包含:

  

它定义一个名为mathFunction的变量,它具有一个带有两个Int值的函数类型,并返回Int个值。设置此新变量以引用名为addTwoInts

的函数

问题:函数类型可以像Swift中的任何其他类型一样使用,我想知道,因为我怎样才能创建一个类型别名,它具有一个需要两个{{1}的函数类型} value,并返回Int个值。设置此新变量以引用名为addTwoInts

的函数

我试过这个,显然,我错了。

enter image description here

1 个答案:

答案 0 :(得分:9)

您无法将功能分配给typealias

您只能指定一种类型。

typealias mathFunctionType = (Int, Int) -> Int

let mathFunction: mathFunctionType = { int1, int2 in
    return int1 + int2
}