我想使用通用协议类型作为函数返回类型,如下所示:
protocol P {
associatedtype T
func get() -> T?
func set(v: T)
}
class C<T>: P {
private var v: T?
func get() -> T? {
return v
}
func set(v: T) {
self.v = v
}
}
class Factory {
func createC<T>() -> P<T> {
return C<T>()
}
}
Run Code Online (Sandbox Code Playgroud)
但是这个代码编译错误抱怨:
有没有办法用Swift实现类似的功能?