简单叙述一下吧。
MRC模式 就是带有retain,release和autorelease方法操作的技术引用,计数器为0的时候就会自动释放内存。
在ARC模式下对象不能调用release,retain和retainCount方法,允许重写dealloc但不能[super dealloc];
1:如果没有强指针指向对象,该对象就会被销毁,换种说法说,如果一开始就是弱指针,没意义,直接被回收;
2:指针默认都是强指针的,修饰符为连续两个下横线的__strong;
3:assign只适合于基础数据类型;
4:弱指针无法决定对象是否被收回,只有强指针才可以,如果弱指针指向的对象如果被回收了,弱指针本身也会被自动置空,避免野指针问题
还有一个比ARC和MRC更加先进的方法,那就是混编
混合编码 在Xcode 工程里的Build Phases的 Compile Sources 点开后找到Compiler Flags,双击就可以书写了
是 ARC 就输入 -fobjc-arc
是 MRC 就输入 -fno-objc-arc
这样就可以混编了 ,还有一点,用哪个 (有个点) .m 就在哪个后面写!
写好之后就可以更佳高效利用了!
时间: 2024-10-23 05:30:36