鉴于有2个协议P1和P2,可以指定符合两种协议的类型,例如:
typealias P = protocol<P1,P2>
是否有类似的方法来指定类型的类型并且也符合协议,例如像这样的东西(不起作用):
typealias P = UIVIEw: P1解决方法 不幸的是,它在Swift 2.2中是不可能的,并且不会在Swift 3.0中添加.
想要为继承某些类和实现协议的类型创建类型规则的想法.
因此,您将拥有此类层次结构并且具有您希望存储其中一个类的属性并不常见.
同样在POP范例中,您应该有其他协议,为您提供UIVIEw所需的属性.
也许你有这样的用例:
然后创建其他类:
你的类型将是P1Base
附:这就是为什么你创建@property(非原子)UIVIEwController< UItableVIEwDelegate> * protocolClassproperty;在Obj-c中,它将被桥接为UIVIEwController!在斯威夫特
总结以上是内存溢出为你收集整理的swift – 指定实现协议的类全部内容,希望文章能够帮你解决swift – 指定实现协议的类所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)