从textview插入文本到字符串返回NSMallocBlock在字符串目标c
问题描述:
我有一个textview,用户可以编辑,当我尝试从textview插入文本到类型为Nsstring的本地属性,我得到了这个属性NSMallocBlock。是什么原因?谢谢! 这是cartItemComment的defintaion:从textview插入文本到字符串返回NSMallocBlock在字符串目标c
@property (nonatomic, assign) NSString * cartItemComment;
,这是代码:
CartItem *cartItem = [[CartItem alloc]init];
cartItem.cartItemComment = itemRequestText.text;
cartitem是有一个属性cartItemComment一个对象,这些行后,我在cartItemComment了NSMallocBlock。
答
assign
财产属性适用于原始类型,它什么都不做与对象引用。当一个对象被分配给这个属性时,它被释放(如果它没有被其他对象保留),并且你剩下的只是一个指向曾经存储过的内存的指针。切勿使用assign
来存储对象。
weak
类似于assign
,唯一的区别是,当此属性所引用的对象被释放(保留计数达到零),它被设置为nil
,所以你永远不会有一个指针到垃圾内存。
strong
保留该对象并防止它被释放。
你的财产应申报如下所示:
@property (nonatomic, strong) NSString *cartItemComment;
+0
Thanx pckill !!你真的帮助我了! – yoc
不能帮助没有代码。请在此处添加您的代码 –
我添加了更多信息。它现在明白吗? – yoc
号'itemRequestText.text'是否为零?你能否显示'cartItemComment'的定义。这是一个财产吗?强而不实? (如果你把分配,明确可能会崩溃)。另外,它是一个NSString属性?你能显示崩溃的堆栈轨迹吗?整个错误消息? – Larme