是否可以让我的 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 () }
}

此虚拟代码未提供任何错误。也许你在某处打错了字?