【发布时间】:2020-04-26 21:09:20
【问题描述】:
protocol UtimesListResponseProtocol:HandyJSON{
associatedtype T
var slide: Int {get set}
var top: String {get set}
var bottom: String {get set}
var hasMore: Bool {get set}
var list: [T] {get set}
func add<M:UtimesListResponseProtocol>(data:M)
}
extension UtimesListResponseProtocol{
mutating func add<T:UtimesListResponseProtocol>(data:T){
slide = data.slide
top = data.top
bottom = data.bottom
hasMore = data.hasMore
list.append(data.list)
}
}
我想在协议中添加一个添加数组的方法,但是好像不行。怎么办,主要是数组中的数据类型也是泛型的,怎么办
【问题讨论】:
-
因为您的列表是 T 类型,并且您尝试添加 M,删除关联类型,change1 - var list: [UtimesListResponseProtocol] {get set}, change2 - list.append(contentsOf: data.list )
标签: arrays swift list types append