分配功能我有迅速的一类具有下列变量:斯威夫特:可变
var pendingFunction = ((Double, Double) -> Double)
斯威夫特然后告诉我:
Expected member name or constructor call after type name
它坚持认为,我在我的代码更改为:
var pendingFunction = ((Double, Double) -> Double).self
我不知道这.self
事情在做什么(抱歉,我是新来的斯威夫特)
然后我尝试分配pendingFunction
到一个新的功能:
pendingFunction = function
其中function
需要两个双打,并返回一个双。
不过,我出现以下错误:
Cannot assign value of type '(Double,Double) -> Double' to type '((Double,Double)->Double).Type'
所以我的问题是:什么是.self
事情做,我怎么能正确地分配给变量的函数吗?
你会想'var pendingFunction:((Double,Double) - > Double)'声明一个函数类型的变量。 –
'var pendingFunction:((Double,Double) - > Double)= {firstDouble,secondDouble in/* do you stuff here//}'then then let'let resultDouble = pendingFunction(double1,double2)' – ObjectAlchemist
至于.self ,这意味着你正在分配函数的类型,而不是实际的函数。例如,'var someInt:Int'表示您将为其指定一个特定的Int值,而'var someInt = Int.self'则意味着您将它用作整体表示Int类型。 –