zoukankan      html  css  js  c++  java
  • MRC与ARC混合开发配置

    iOS4.1后,默认为ARC模式,ARC实质上通过编译器特性实现的,只需简单修改下文件配置即可实现.

    1.要切换至MRC需要选中当前Project,选择Build Settings,查询框内键入auto,查找到Objective-C Automatic Reference Counting ,将YES选成NO即可.见下图:

    2.还可以灵活选择单一或几个文件设置成ARC模式,方法是选择targets,找到Compile Sources,选择所需文件,将flags ,键入-fobjc-arc即可.见下图:

    3.还可以灵活选择单一或几个文件设置成MRC模式,方法是选择targets,找到Compile Sources,选择所需文件,将flags ,键入-fno-objc-arc即可.见下图:

    内存管理原则:
    1)谁创建(alloc,new),谁release或者autorelease;
    2)谁retain,mutableCopy(copy),谁release或autorelease;
     
    MRC:手动内存管理
    出现新对象时,手动添加release或autorelease.
     
    ARC工作原理:
    ARC是Objective-C编译器的特性,而不是运行时特性或者垃圾回收机制,ARC所做的只不过是在代码编译时为你自动在合适的位置插入release或autorelease。
    ARC的判断准则: 
    只要还有一个强指针变量指向对象,对象就会保持在内存中。
    只要没有强指针指向对象,对象就会被释放。 
    注意:当使用ARC的时候,暂时忘记“引用计数器”,因为判断标准变了 
     
  • 相关阅读:
    win10下安装为知笔记的markdown插件
    最近一段时间的工作状态
    C++中的取余与取模
    来新项目后,最心虚的一个夜晚
    g++添加支持c++11的选项
    Linux ssh远程登陆方式:密码与公钥
    判断脚本加载完成
    解决ie6下最小高度问题
    display:inline-block的深入理解
    ff下button按钮上的文字垂直居中
  • 原文地址:https://www.cnblogs.com/wanchen/p/4912715.html
Copyright © 2011-2022 走看看