遇到问题,宣布对泛型类
问题描述:
参考我有一个泛型类具有以下签名遇到问题,宣布对泛型类
class Picker<U: Multipickable>
在另一类,我想创建上述Picker
类型的delegate
财产。作为其他课程的一些行动的结果,我想将信息传递回Picker
。
//in another class
weak var delegate: Picker! //error
有2个编译器错误,说明如下:
引用泛型类型Picker
要求论点< ...>
和
weak
不能适用于非类类型<<error type>>
有没有办法解决这个问题?
答
第一个错误说Picker
需要参数< ...>。所以,你必须把它在选择器定义为< ...类类型>
var delegate: Picker<Multipickable>!
第二个错误是因为抛出的第一个错误,在错误的方式你Picker
类的使用,它成为一个<<error type>>
,所以你不能weak
它