因为工程默认是ARC的,自动管理了对象生命周期计数器的调用。
ARC环境下,不需要显示的使用release retain retainCount

解决方案 »

  1.   


    那xcode6 里面就不需要调用这几个了? 会自动帮你计算引用计数么?
      

  2.   


    默认工程配置下 不需要加了,编译器会自动处理的。
    如果更改工程为非ARC,那么还是要加的。
      

  3.   

    苹果从iOS5开始,就引入了ARC这种内存管理技术,目的就是消除繁琐而容易出错的手工内存管理行为。如果项目是ARC的,那么就不能调用原来的retain, release, autorelease,而且dealloc也不再需要内存维护相关的代码。具体可参见苹果官方文档
    高级内存管理指南
      

  4.   


    额 才开始学到内存管理那  结果发现xcode里那么写直接报错。  如果内存管理交给系统自动维护了  是不是内存管理就不用学习了?
      

  5.   

    ARC实际上是编译器帮你插入了retain, release,autorelease等调用,虽说大多数时候,你可以不再关心这些事情,但了解ARC背后的原理还是很重要的。例如什么时候用weak引用,什么时候用unsafe_unretain,什么时候用assign;retain cycle是什么,应该怎么避免它们……这些都是很重要的概念。不过倒是可以在后面慢慢学习,作为高级技能来掌握
      

  6.   


    当然还是要学习呀,了解内存管理的原理和方法,对提高代码质量还是很有帮助的。好吧  我看教程视频里面的代码 各种 retain release  是不是现在的项目代码里就不用写这些来
      

  7.   

    是的,记得遵守苹果的代码命名规范即可——避免以alloc, copy, mutableCopy, new作为属性或者方法的前缀,因为它们会影响ARC的行为