+(NSMutableDictionary*)getList:(NSString *)key
{
......
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:key];
return dict;
}
调用时
NSMutableDictionary *obj = [self getList:key];
[obj.release];Instruments中偶尔提示内存泄漏 指向
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:key];请教问题出在哪里?
{
......
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:key];
return dict;
}
调用时
NSMutableDictionary *obj = [self getList:key];
[obj.release];Instruments中偶尔提示内存泄漏 指向
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:key];请教问题出在哪里?
解决方案 »
- win8系统AMD安装山狮10.8.3遇到问题,求大虾拯救!!
- iphone的各位牛们帮忙给点意见!
- 请问tab bar controller的多个tab页里面的公共信息怎么显示?
- tabelview刷新
- iOS 模拟器无法显示完整 -------help
- iOS 这样的接口要如何遍历.没有包含NSDictionary的?
- 黑马iOS二期学习视频猫猫某宝购买的,现在分享了
- [__NSCFDictionary setObject:forKey:]: mutating method sent to immutable object'
- iOS新人做项目
- 有在iOS上使用vtk的同学吗?
- iPhone SDK开发:禁止UIWebView的bounces
- 可以取到手指在屏幕的覆盖范围吗?
{
//使用autorelease
[NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:key] autorelease];
return dict;
}
{
//使用autorelease
NSMutableDictionary *dict=[[[NSMutableDictionary alloc] initWithContentsOfFile:key] autorelease];
return dict;
}
[obj.release];
是不对的,肯定报错的
因为(getList:)是+2,代码在释放池中的话,可以返回 autorelease
或者调用后自动释放
NSMutableDictionary *obj = [类 getList:key];
这里如果是在普通函数中的话,大可不用管。因为函数结束后,所有的引用地址会自动释放。 *obj是指针,没有alloc。
我现在需要obj持久保持的
在该方法内,记得obj release 一次。dealloc 中,也要release 一次
{
......
NSMutableDictionary *dict=[[NSMutableDictionary alloc] initWithContentsOfFile:key];
return [dict autorelease];
}记得外部不需要release了。