繁体   English   中英

Swift通用类参数实现另一个参数

[英]Swift generic class parameter implementing another parameter

我想在Swift中实现一个带有两个参数的通用类。 一个必需的约束是第一个参数是协议,第二个参数必须实现此协议。

码:

protocol Protocol {}

class Generic<T: Protocol, U>  where U: T {

}

编译器错误说:

错误:类型“ U”限制为非协议,非类类型“ T”

但这不是真的,因为T是协议。

您有一个想法如何实现吗?

你想要的是

protocol Protocol {} 
class Generic<T: Protocol> {
    init(type: T.Type, instance: T) {

    } 
}

但是用例可以帮助我们了解您要实现的目标...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM