1

我有以下代码行

@property (nonatomic, retain) id<MessageItemProtocol> *message;

在这里,我收到一个错误:“具有‘保留’(或强)属性的属性必须是对象类型”

我知道我收到了一个错误,因为它是一个协议。那么,那么它的属性类型应该是什么?

4

2 回答 2

4

尝试

@property (nonatomic, retain) id<MessageItemProtocol> message;

或者

@property (nonatomic, retain) NSObject<MessageItemProtocol> *message;
于 2012-09-21T23:58:22.717 回答
3

id已经是一个指针,所以你不需要*.

@property (nonatomic, retain) id<MessageItemProtocol> message;
于 2012-09-21T23:59:14.650 回答