我有一些代碼,導致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