我有一些代码,导致EXC_BAD_ACCESS错误:内存问题
recordIDAsString = [
NSString stringWithFormat:@"%i", (int)abRecord.recordID
];
propertyIDAsString = [
NSString stringWithFormat:@"%i", (int)abProperty.propertyID
];
identifierAsString = [
NSString stringWithFormat:@"%i", (int)abProperty.identifier
];
recordIDAsString,propertyIDAsString和identifierAsString在界面中的所有定义。该代码包含在编辑视图控制器中,并且三个* AsString变量似乎工作正常,直到按下保存按钮时,其值变得无效。然而,我发现下面的代码不工作:
NSString *tempRecordIDAsString = [
NSString stringWithFormat:@"%i", (int)abRecord.recordID
];
NSString *tempPropertyIDAsString = [
NSString stringWithFormat:@"%i", (int)abProperty.propertyID
];
NSString *tempIdentifierAsString = [
NSString stringWithFormat:@"%i", (int)abProperty.identifier
];
recordIDAsString = [tempRecordIDAsString copy];
propertyIDAsString = [tempPropertyIDAsString copy];
identifierAsString = [tempIdentifierAsString copy];
我想我只有当我打电话的alloc或init,所以我的问题是管理内存:什么是导致第一个代码示例发生内存变得无效?
这是一些严重奇怪的方法调用格式...但是,对于他自己。 – bbum 2009-08-19 01:02:08
是的,它格式非常奇怪。这是误导性的,因为它使得发送给对象的消息看起来像代码括号。 – corydoras 2009-08-19 04:15:09
你怎么做才能在多行中打破这个信息? – JoBu1324 2009-08-21 09:19:21