斯威夫特的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
我试过这个,显然,我错了。
答案 0 :(得分:9)
您无法将功能分配给typealias
。
您只能指定一种类型。
typealias mathFunctionType = (Int, Int) -> Int
let mathFunction: mathFunctionType = { int1, int2 in
return int1 + int2
}