标签: swift swift-protocols
我遇到了swift协议的限制:
protocol P { } protocol Q: P { } protocol R { var p: P { get set } } struct S: R { var p: Q }
代码似乎是正确的,但它不会构建,因为S不符合协议R,这需要P类型的属性。
S
R
P
Struct S有一个Q类型的属性,根据定义,它扩展为P。
Q
这是一个错误还是设计?
和
有人可以提出解决方法吗?