美文网首页iosiosiOS开发技术分享
预处理和Pch文件的使用

预处理和Pch文件的使用

作者: cslong | 来源:发表于2015-11-20 16:22 被阅读1179次
    • OC编程中包含一个预处理器,用于在编译前处理源文件。而预处理指令有其自己的一套语法,主要也是配合预处理文件pch使用比较多。
    • 指令
    • 头文件包含(#include, #import)

    • 条件编译(#if, #elif, #else, #endif, #ifdef, #ifndef )
      说明: 简单的 #if #elif 这些跟平时的判断预计是一样的。
      #ifdef 如果有定义,就执行
      #ifndef 如果没有定义,就执行

    • 诊断(#error, #warning # line)

    • (#pragma) 指令 提示分段使用

    • 宏 #define 有名称的代码段。

    • 在Xcode6之前创建新工程它会在工程的Supportting files 文件夹下面自动创建一个.pch文件。这是一个预编译文件
      1.主要用于存放全局的宏定义
      2.一些头部文件,比如全局都会使用的单例文件
      3.设置调试信息的开关

    • 头文件的导入


      预编译文件.jpg

    这里需要手动的去配置文件的路径和开启预编译。
    输入引用路劲 $(SRCROOT)/OC_Demo/PrefixHeader.pch
    智能的导入成 绝对路径。

    配置路径.jpg
    • 将这段定义放到pch文件中,在调试状态时候开启日志输出
      #ifdef DEBUG // 调试状态
      #define LOG() NSLog(@"开启调试LOG--");
      #else // 发布状态
      #define LOG()
      #endif

    • 在pch文件代码已经设置好,还要去配置中设置好你所要用到的参数的值用于控制pch文件的访问,分别是打包编译的debug和release版本状态值。这里设置DEBUG = 1 而 Release 不设置参数。

    设置调试状态的宏参数.jpg

    分别选着运行时候的build状态,就可以看到输入日志中有没有执行相应的宏定义了。

    • 打包运行状态的设置在 edit shceme 这里可以选择build的设置
    修改打包运行状态.png
    • 修改run中的build configuration


      打包运行状态修改.png
    • 在main()文件中添加 LOG();

    main.jpg
    • 分别更改打包状态后的运行结果
      debug版本:


      debug的运行结果.png

    release版本:


    release版本的运行结果.png

    简单是设置就可以控制打包时候日志的关闭和开启了

    相关文章

      网友评论

      本文标题:预处理和Pch文件的使用

      本文链接:https://www.haomeiwen.com/subject/cfblhttx.html