gpt4 book ai didi

ios - Swift 协议(protocol)与子类型的一致性

转载 作者:行者123 更新时间:2023-11-29 01:07:19 24 4
gpt4 key购买 nike

我希望能够使用实现协议(protocol)要求的类型来实现协议(protocol)(下面的 B)的属性。例如我想要编译下面的代码。目前,错误是“Type D does not conform to protocol B”

protocol A {
func doSomething()
}

protocol B {
var property: A { get }
}

class C: A {
func doSomething() {
//Stuff
}
}

class D: B {
var property: C = C()
}

最佳答案

猜猜这应该与关联类型一起完成

protocol B {
associatedtype T : A
var property: T { get }
}

class D : B{
var property : C = C()

}

关于ios - Swift 协议(protocol)与子类型的一致性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36197577/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com