我的财产很弱:
@property (nonatomic,weak) NSManagedObjectID *locatedMessageID;
调用-(void)setLocatedMessageId
时应用会崩溃。错误是:
EXC_BAD_INSTRUCTION(代码= EXC_I386_INVOP)。
要解决此问题,只需将'weak'关键字替换为'assign'。
@property (nonatomic,assign) NSManagedObjectID *locatedMessageID;
但它安全吗?为什么我不能在这里使用弱房产?
答案 0 :(得分:-1)
NSManagedObjectID
是不可取的。请改用对象本身。您可以方便地访问所有关联的对象和属性 - 实际上不需要根据对象ID再次显式获取对象。
与下面的评论相反,您最好使用对象本身。