Objective-C内存管理[备忘]

[1]。手动内存管理

所有Objective-C类子类NSObject
1.NSObject类被引用计数
2.当引用计数== 0时,释放内存

初始化或复制:引用计数= 1
发布:参考计数—
保留:引用计数++

约定:以init或copy开头的方法开头的方法:
返回“自动释放的对象”

autorelease :引用计数-(稍后)

ARC前
1.属性可以标记为保留

在超级释放中清理

演示版

现在关闭ARC

新文件/可可触摸类/将类名设置为Sweater和NSObject的子类

检查xcode中的内存泄漏
产品/资料/

源代码

[2]。使用ARC进行内存管理
1.当打开ARC时,您不能使用keep,release,autorelease,dealloc
2.ARC!=垃圾回收
3.将指针变量声明为__strong(默认)和__weak

开启ARC

使用ARC的潜在问题:保留周期

将代码添加到演示保留周期

源代码

数据来自

编辑历史记录:
20171123添加