Jas*_*Bub 6 iphone memory-leaks
我有一组由www.sudzc.com创建的类(用于iPhone/Flex/Javascript的非常棒的WDSL Web服务代理创建工具).
当我运行CMD + SHIFT + A来检查内存泄漏时,我收到以下消息:
具有+0保留计数的对象返回给调用者,其中预期+1(拥有)保留计数
以下是返回该消息的方法:
// Static method for initializing from a node.
+ (id) newWithNode: (CXMLNode*) node
{
return (id)[[[SoapObject alloc] initWithNode: node] autorelease];
}
Run Code Online (Sandbox Code Playgroud)
我不想用这个代码发送消息,它需要在项目中多次重新生成,因为Web服务发生了变化,我需要更新代理类.
有任何想法吗?
提前致谢.
贾森
标记该方法,因为方法名称具有"新"前缀.静态分析器只是评论应用常规方法命名约定,人们会期望该方法返回您要释放的对象,而不是自动释放的对象.
方法的"常规"命名约定,例如为方法添加类的名称,例如,如果为名为Widget的类定义了该方法:
@interface Widget : NSObject {
}
+ (id)widgetWithNode:(CXMLNode*)node; // Returns an object that has been autoreleased.
- (id)initWithNode:(CXMLNode*)node; // Returns an object you are expected to release.
@end
Run Code Online (Sandbox Code Playgroud)
如果您正确使用该方法(也就是说,您正在考虑它返回一个自动释放的对象的事实),那么您可以忽略该警告.
| 归档时间: |
|
| 查看次数: |
2474 次 |
| 最近记录: |