【发布时间】:2015-09-23 10:15:06
【问题描述】:
我有通用类:
class Generic<T> {
var value: T
init(value: T) {
self.value = value
}
}
并且我想编写仅在T 是任何类型的 2 个值的元组时使用的扩展方法,并且此方法返回 Generic 类型的值和 3 个值的新元组。我试过了:
extension Generic {
func append<A, B, C where T: (A, B)>(c: C) -> Generic<(A, B, C)> {
return Generic(value: (value.0, value.1, c))
}
}
但显然这是行不通的,因为where 子句只接受协议。
【问题讨论】: