请澄清一下,如何处理方法中返回的对象?
下面,我从GeEmployeetData函数获取员工详细信息,其中包含autorelease,
我可以在处理功能中释放* \ temp吗?
- (void)流程 { 员工* emp = [自我GeEmployeetData] }
+(员工*)GeEmployeetData {
员工* emp = [[员工分配]初始化]; //填充实体
return [emp autorelease]; }
答案 0 :(得分:4)
99%的时间如果你想保留它们,你应该保留从其他方法返回的自动释放的对象。
使用自动释放的对象,当池耗尽时,池中的对象将被发送release
消息。 这就是为什么99%的时间你想要保留自动释放的对象,因为你很有可能获得retainCount
超过1
的对象。