Ios 通用闭包的快速数组?
可能吗?错误Ios 通用闭包的快速数组?,ios,generics,swift,closures,type-constraints,Ios,Generics,Swift,Closures,Type Constraints,可能吗?错误只有syntactic函数类型可以是泛型的表明它不是泛型的 有效代码 func test<T:Equatable>(function: (T) -> T){ var myArray:Array<T -> T> = [function]; } func测试(函数:(T)->T){ var myArray:Array T>=[函数]; } 现在我想创建一个与myArray类型相同的属性。我觉得我应该有办法做到这一点 不起作用 var myA
只有syntactic函数类型可以是泛型的表明它不是泛型的
有效代码
func test<T:Equatable>(function: (T) -> T){
var myArray:Array<T -> T> = [function];
}
func测试(函数:(T)->T){
var myArray:Array T>=[函数];
}
现在我想创建一个与myArray
类型相同的属性。我觉得我应该有办法做到这一点
不起作用
var myArray:(T->T)[]
有什么想法吗?即使这样:
func test<T:Equatable>(function: (T) -> T){
var myArray:Array<T -> T> = function;
}
这将有助于:
class MyClass<T> {
var myArray:(T->T)[] = []
}
即便如此:
func test<T:Equatable>(function: (T) -> T){
var myArray:Array<T -> T> = function;
}
这将有助于:
class MyClass<T> {
var myArray:(T->T)[] = []
}
是的,那是个打字错误,我把它修好了var myArray:(T->T)[]=[]
存在错误使用未声明的类型T
,这就是为什么需要使用类型约束我将其添加到myClass
是的,这是一个输入错误,我修复了它var myArray:(T->T)[]=[]
有错误使用未声明的类型T
,这就是为什么需要使用类型约束我将其添加到myClass