我正在写一个需要泛型的类。
我需要它符合协议或者是符合协议的物品清单
我的班级划分:

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
    }
}

10-06 10:05