我正在写一个需要泛型的类。
我需要它符合协议或者是符合协议的物品清单
我的班级划分:
class LiveData<T> where T: Actor
现在它只接受符合Actor的单个项,我想还可以选择传递一个符合Actor的项数组
我怎样才能做到这一点?
最佳答案
您可以使用两个初始化器来解决问题。可以使用单个参与者或参与者数组初始化LiveData。
class LiveData<T> where T: Actor {
var actors: [T]
init(actor: T) {
self.actors = [actor]
}
init(actors: [T]) {
self.actors = actors
}
}