我的代码是这样的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