[英]Accessing protocol property in Swift class
我正在尝试使用协议将数组从一个类传递到另一个类。
protocol PinsArray {
var dataArray: [LocationPost] {get set}
}
当我尝试在类中创建一个委托时,该委托将无法正常工作。 我无法访问该物业
var delegate = PinsArray.self
像这样:
delegate.dataArray
它说“实例成员'dataArray'不能在类型PinArray上使用”
那我该怎么办呢?
您正在分配PinsArray
的类型来delegate
而不是分配符合PinsArray
的类的实例 。 您将需要实现一个符合PinsArray
的类,并将该类的实例分配给委托。 请参见以下示例:
class SomeClass: PinsArray {
var dataArray: [LocationPost]
// ...
}
您将使用上面的类创建符合PinsArray
的对象的实例。
var delegate = SomeClass()
然后,您可以使用:
delegate.dataArray
我用错别字声明了委托,它应该像这样:
var delegate: PinsArray?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.