我的代碼是這樣的iphone:功能之間傳遞對象
- (id)getViewControllerForManagedObject:(QIManagedObject *)object {
DataTableViewControllerReports *nextControllerReports = [[[DataTableViewControllerReports alloc] initWithNibName:@"ReportsScreenXIB" bundle:nil] autorelease];
nextControllerReports.objectStack = [self.objectStack arrayByAddingObject:object];
return nextControllerReports;}
我返回自動釋放對象的父類中定義的功能。但在這一點上,應用程序崩潰。我以調試模式運行應用程序,發現從這個函數返回後顯示「Objc_Msgsend」。意味着nextcontrollerReports對象正在發佈。所以任何人都可以幫助我將這個對象傳遞給其他函數。
在此先感謝。
謝謝,我這樣做,然後它工作正常。但我認爲這種方式的對象會泄漏,你說什麼? – 2009-12-22 11:14:51
而不是直接保留,將其分配給一個屬性定義爲(nonatamic,保留),並添加一個調用來釋放此屬性成員在你的類'dealloc – cidered 2009-12-22 16:43:26
是的。你可以像cidered說的說..當你拿着一個對象使用保留..你必須稍後釋放它.. 或將其設置爲一個屬性(與保留屬性)的東西.. – 2009-12-23 11:10:18