zoukankan      html  css  js  c++  java
  • iOS 开发,工程中混合使用 ARC 和非ARC(转)

    【前提知识】

    ARC:Automatic Reference Counting,自动引用计数

    在开发 iOS 3 以及之前的版本的项目时我们要自己负责使用引用计数来管理内存,比如要手动 retain、release、autorelease 等,而在其后的版本可以使用 ARC,让系统自己管理内存。

    【问题】

    在项目开发过程中我们通常会用到第三方提供的源代码,麻烦的是有些开源项目用的是 ARC,有的用的是非 ARC。

    我在使用 SVProgressHUD 做等待视图时遇到问题,最终发现该项目使用的是 ARC 模式,而我的工程使用的是非 ARC 模式。

    怎么办呢?

    【解决方案】

    Xcode 项目中我们可以使用 ARC 和非 ARC 的混合模式。

    如果你的项目使用的非 ARC 模式,则为 ARC 模式的代码文件加入 -fobjc-arc 标签。

    如果你的项目使用的是 ARC 模式,则为非 ARC 模式的代码文件加入 -fno-objc-arc 标签。

    添加标签的方法:

    1. 打开:你的target -> Build Phases -> Compile Sources.
    2. 双击对应的 *.m 文件
    3. 在弹出窗口中输入上面提到的标签 -fobjc-arc / -fno-objc-arc
    4. 点击 done 保存
    5. 参考:

      SVProgressHUD 下载

      http://blog.unieagle.net/?p=484

      http://stackoverflow.com/questions/6646052/how-can-i-disable-arc-for-a-single-file-in-a-project

      https://github.com/samvermette/SVProgressHUD/issues/84

    花开花谢春不管,水暖水寒鱼自知.
  • 相关阅读:
    JPEG compression
    GPU编程库
    亚马逊AWS服务器CentOS/Linux系统Shell安装Nginx及配置自启动
    如何查看mac系统是32位还是64位的操作系统
    mac解压7z格式文件
    vi中跳到文件的第一行和最后一行
    docker学习记录
    git 比较两个分支不同的commit
    meta property=og标签含义及作用
    php发现一个神奇的函数
  • 原文地址:https://www.cnblogs.com/taintain1984/p/3406411.html
Copyright © 2011-2022 走看看