OStack程序员社区-中国程序员成长平台

标题: ios - Swift泛型类参数实现另一个参数 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-11 20:22
标题: ios - Swift泛型类参数实现另一个参数

我想在 Swift 中实现一个带有两个参数的泛型类。一个必需的约束是第一个参数是协议(protocol),第二个参数必须实现该协议(protocol)。

代码:

protocol Protocol {}

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

}

编译器错误提示:

error: type 'U' constrained to non-protocol, non-class type 'T'

但这不是真的,因为 T 是一个协议(protocol)。

你知道如何实现它吗?



Best Answer-推荐答案


认为你想要的是

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

    } 
}

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

关于ios - Swift泛型类参数实现另一个参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51375864/






欢迎光临 OStack程序员社区-中国程序员成长平台 (http://ostack.cn/) Powered by Discuz! X3.4