我有一个符合SomeProtocol
weak var delegate:SomeProtocol?
现在我希望这个委托成为SomeClass
。
我如何在一个声明中做到这一点?
我是否必须定义一个新的子类,它继承自SomeClass
并符合SomeProtocol
?
答案 0 :(得分:0)
在Swift中,您可以使您的类继承自另一个类并符合多个协议。
这是语法
protocol CanRun { }
class Animal { }
class Cat: Animal, CanRun { }
答案 1 :(得分:0)
变量可以只有一个类类型或符合许多协议,在您的情况下,您可以创建SomeClass
符合的另一个协议,比如SecondProtocol
并指定您的delegate
符合两者SomeProtocol
和SecondProtocol
:
weak var delegate: protocol<SomeProtocol, SecondProtocol>
或做你对新子类的说法。