ios - 自动释放关键字

标签 ios objective-c autorelease

我是 Objective C 2.0 的新手。我遇到了这个关键字 autorelease,我只需要一些说明。我只是想知道下面两行代码在 objective - c 2.0 中有什么区别(提前致谢):

  1. [UIImage imageWithData:[NSData dataWithContentsOfURL:url]];

  2. [[UIImage imageWithData:[NSData dataWithContentsOfURL:url]] autorelease];

最佳答案

第二行不正确。 +imageWithData: 已经返回了一个自动释放的对象。自动释放实际上类似于释放,只是您仍然拥有该对象的所有权,直到它超出范围。阅读 Memory Management Programming Guide获取更多信息。

另请注意,在 ARC 中你不会被允许使用这个方法,编译器会为你做。

关于ios - 自动释放关键字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7098207/

相关文章:

ios - 以编程方式设置标签栏项目

ios - Cocoapods,以通用方式为所有目标添加依赖

ios - GTM 设置中的 Firebase 和 Legacy iOS 意味着什么

ios - 从 NSUserDefaults 字典 iOS 中删除所有键

iphone - 从 UIGraphicsGetImageFromCurrentImageContext 泄漏返回的 UIImage

ios - 适用于 iOS 的 OpenCV 2.4.3 是否在幕后使用 Accelerate Framework?

ios - 使用 NSPredicate 判断一个 NSSet 是否包含另一个 NSSet 中的对象

iphone - 如何使用ntimer显示秒?

iphone - Objective C 在自动释放对象上泄漏内存

ios - 带有 init 和 mutableCopy 的 NSMutableArray,如何自动释放?