是否可以让我的 class 遵守这个似乎需要结构的协议?
Is it possible to have my class adhere to this protocol that seems to require a struct?
我正在使用 MessageKit,它要求您拥有采用协议 MessageType
的模型对象。大多数示例都涉及遵循协议的结构,但不幸的是,我正在使用第三方 API 库与站点的 API 进行交互,并且它们的所有模型都是 classes(在Objective-C).
所以当我尝试采用 extension ServerMessage: MessageType
的协议时,我得到了错误
Inheritance from non-protocol type
如何让它与我的 Objective-C class 一起使用?
任何适用于 struct
的协议都必然适用于 class
。限制是相反的。没有代码片段很难提供答案,但我不明白为什么它不起作用。
@objc class ServerMessage: NSObject {
}
protocol MessageType {
var sender: Any { get }
}
extension ServerMessage: MessageType {
var sender: Any { return () }
}
此虚拟代码未提供任何错误。也许你在某处打错了字?
我正在使用 MessageKit,它要求您拥有采用协议 MessageType
的模型对象。大多数示例都涉及遵循协议的结构,但不幸的是,我正在使用第三方 API 库与站点的 API 进行交互,并且它们的所有模型都是 classes(在Objective-C).
所以当我尝试采用 extension ServerMessage: MessageType
的协议时,我得到了错误
Inheritance from non-protocol type
如何让它与我的 Objective-C class 一起使用?
任何适用于 struct
的协议都必然适用于 class
。限制是相反的。没有代码片段很难提供答案,但我不明白为什么它不起作用。
@objc class ServerMessage: NSObject {
}
protocol MessageType {
var sender: Any { get }
}
extension ServerMessage: MessageType {
var sender: Any { return () }
}
此虚拟代码未提供任何错误。也许你在某处打错了字?