参考文献: iOS ARC 完全指南
提示:本文中所说的"实例变量"即是"成员变量","局部变量"即是"本地变量"
一、简介
ARC是自iOS 5之后增加的新特性,完全消除了手动管理内存的烦琐,编译器会自动在适当的地方插入适当的retain、release、autorelease语句。你不再需要担心内存管理,因为编译器为你处理了一切
注意:ARC 是编译器特性,而不是 iOS 运行时特性(除了weak指针系统),它也不是类似于其它语言中的垃圾收集器。因此 ARC 和手动内存管理性能是一样的,有时还能更加快速,因为编译器还可以执行某些优化
二、原理
ARC 的规则非常简单:只要还有一个变量指向对象,对象就会保持在内存中。当指针指向新值,或者指针不再存在时,相关联的对象就会自动释放。这条规则对于实例变量、synthesize属性、局部变量都是适用的
三、strong指针
控制器中有个文本输入框框属性
@property (nonatomic, assign) IBOutlet UITextField *nameField;
1.如果用户在文本框中输入mj这个字符串

本文详细介绍了iOS中的自动引用计数(ARC)机制,包括strong和weak指针的原理和应用场景。ARC简化了内存管理,通过strong指针自动保持对象的生命周期,而weak指针用于打破循环引用,防止内存泄漏。文章还强调了ARC的限制和使用注意事项,特别是对内存管理的理解仍然至关重要。
最低0.47元/天 解锁文章
623

被折叠的 条评论
为什么被折叠?



