zoukankan      html  css  js  c++  java
  • pch 文件

    PCH的文件的用途:
         在实际的项目开发中,如果很多地方都在使用某个类的头文件,很多地方都在使用同一个”宏”的时候;很多地方用到了NSLog()函数, 在app发布的时候,想清除掉时,此时就需要一个pch文件了;
     
    PCH文件的好处:
         其他代码文件无需显示导入该PCH文件,默认就都可以访问(其他文件无需手动#import该pch文件就能使用);
    PCH文件的坏处:编译时比较耗时(这是显然的);
     
    PCH的创建:
    xcode6.1中,默认没有创建pch文件。
    Command + N 新建 PCh File;
     
    程序开发阶段分为:
       1.调试阶段,写代码、调错误,需要使用NSLog()。同时在调试阶段系统会自定义一个叫做DEBUG的宏。
       2.发布阶段,写好的代码生成ipa等压缩文件,上传到AppStore,安装到用户设备上,不需要NSLog()。同时系同会自动删除叫做DEBUG的宏。
       3.综上所述, 可以自定义一个NSLog():
             #ifdef DEBUG
             #define YSCLog(...) NSLog(__VA_ARGS__)
             #else
             #define YSCLog(...)
             #endif
        4.所有与OC相关的宏定义都要写在:
             #ifdef __OBJC__
             #endif
      里面,因为写在这个if中的所有内容只有OC代码才可以使用,当在项目中新建了一个.c文件是不可以使用的(不使用就不会报错),否则如果写在了外面,新建一个.c的程序也能使用,就报错了。比如C语言中没有#import,只有#include <xx.h>
     
     
    PCH文件的导入:
    导入方式一:
    *选中项目-> Build Setting -> All ->搜索"head"->修改Prefix Header的内容为:
       **"$(SRCROOT)/$(PRODUCT_NAME)/PrefixHeader.pch"(如果有问题,换下面的方式,可能会与中文有关)
       **或者 "$(SRCROOT)/对应的文件夹名/PrefixHeader.pch"
    如图所示:
     
     
     
    导入方式二:
         方式一中填写一个相对路径$(SRCROOT)/$(PRODUCT_NAME),这哪记得住?也懒得记!
       怎么办:
         1.先随便写一个路径,编译;
         2.将pch文件拖到终端,终端会直接输出该pch的路径;
         3.根据编译提示错误,缺什么路径,补全即可!
      
    eg:
    1.随便写一个路径“1”,编译错误❌提示:
     
     
     
    2.补全路径即可:
     
  • 相关阅读:
    Java如何编写自动售票机程序
    install windows service
    redis SERVER INSTALL WINDOWS SERVICE
    上传文件
    This problem will occur when running in 64 bit mode with the 32 bit Oracle client components installed.
    解决Uploadify上传控件加载导致的GET 404 Not Found问题
    OracleServiceORCL服务不见了怎么办
    Access to the temp directory is denied. Identity 'NT AUTHORITYNETWORK SERVICE' under which XmlSerializer is running does not have sufficient permiss
    MSSQL Server 2008 数据库安装失败
    数据库数据导出成XML文件
  • 原文地址:https://www.cnblogs.com/miaomiaocat/p/5594111.html
Copyright © 2011-2022 走看看