其实从楼主最早接触iOS编程的时候(15年初左右),Xcode使用的就是ARC,所以一开始也觉得MRC是过去式了,但实际上这几年开发过程中还是躲不开MRC。
说一下自己这几年的理解吧
MRC
1. 项目中有历史遗留的MRC代码
2. 使用有关C的API,比如OpenGL等,而C对象显然是不受ARC控制的
ARC
ARC自动引用计数,算是最常使用的,频繁到我们几乎没有注意到它的存在。但是使用ARC,并不意味着我们就可以完全不用在意内存管理,比如当存在对象间的循环引用时,ARC就不能足够聪明地为我们管理内存,从而造成内存无法被释放。