Error:'autorelease' is unavailable: not available in automatic reference counting mode - iOS
2018-01-09 14:28
615 查看
在调试工程的时候编程程序,遇到 GTMBase64 这个类在 ARC 的环境下出现了异常;
大致意思为当前 ARC 环境属于自动引用计数,编译器会自动执行优化管理释放内存的操作;
故此处无需使用 autorelease 进行手动添加管理释放内存的操作.
手动将类中的 autorelease 关键字删除即可;
result = [[[NSString alloc] initWithData:converted encoding:NSASCIIStringEncoding] autorelease];
↓↓↓
result = [[NSString alloc] initWithData:converted encoding:NSASCIIStringEncoding];
方法二:
在 targets -> build phases 中的 compile sources 项目中修改对应类的 compiler flags 属性;
将其属性中添加 -fno-objc-arc 即可.
如此一来可以让该类兼容当前 ARC 环境编译条件,从而顺利编译通过.
步骤如下图:
注:若项目使用 ARC, 代码中无需再使用 autorelease 关键字.
大致意思为当前 ARC 环境属于自动引用计数,编译器会自动执行优化管理释放内存的操作;
故此处无需使用 autorelease 进行手动添加管理释放内存的操作.
异常:
/Users/survivors/Desktop/iOS/***/Expand/ToolClass/GTMBase64/GTMBase64.m:288:69: 'autorelease' is unavailable: not available in automatic reference counting mode解决办法:
方法一:手动将类中的 autorelease 关键字删除即可;
result = [[[NSString alloc] initWithData:converted encoding:NSASCIIStringEncoding] autorelease];
↓↓↓
result = [[NSString alloc] initWithData:converted encoding:NSASCIIStringEncoding];
方法二:
在 targets -> build phases 中的 compile sources 项目中修改对应类的 compiler flags 属性;
将其属性中添加 -fno-objc-arc 即可.
如此一来可以让该类兼容当前 ARC 环境编译条件,从而顺利编译通过.
步骤如下图:
注:若项目使用 ARC, 代码中无需再使用 autorelease 关键字.
相关文章推荐
- 【已解决】iOS编程过程中出错:’autorelease’ is unavailable: not available in automatic reference counting mode, AR
- 调bug-ios:’autorelease’ is unavailable: not available in automatic reference counting
- [转]error: 'retainCount' is unavailable: not available in automatic reference counting mode
- release' is unavailable: not available in automatic reference counting modeAutomatic
- error: 'release' is unavailable: not available in automatic reference counting,该怎么解决
- 错误:'release' is unavailable: not available in automatic reference counting mode..(Xcode4.2.1+iOS5.0)
- 'release' is unavailable: not available in automatic reference counting mode
- 错误:'release' is unavailable: not available in automatic reference counting mode..(Xcode4.2.1+iOS5.0)
- 关于NSAutoreleasePool' is unavailable: not available in automatic reference counting mode
- 'release' is unavailable: not available in automatic reference counting mode
- 'release' is unavailable: not available in automatic reference counting modeAutomatic
- 'release' is unavailable: not available in automatic reference counting mode
- 错误:'release' is unavailable: not available in automatic reference counting mode..(Xcode4.2.1+iOS5.0)
- 关于NSAutoreleasePool' is unavailable: not available in automatic reference counting mode
- 关于NSAutoreleasePool' is unavailable: not available in automatic reference counting mode
- 'release' is unavailable: not available in automatic reference counting mode..
- 错误:'release' is unavailable: not available in automatic reference counting mode..(Xcode4.2.1+iOS5.0)
- error: 'release' is unavailable: not available in automatic reference counting,该怎么解决
- 'release' is unavailable: not available in automatic reference counting mode
- 错误解决:release' is unavailable: not available in automatic reference counting mode