PCH 文件 和 ProjectName-Bridging-Header 配置

1.简介

PCH文件是Xcode编程中全局引用共享的文件。可以在这里引入头文件或者宏定义来方便程序中多个文件访问。

 

2.PCH文件创建

打开工程 New File… -> iOS Other -> PCH File 输入PCH文件名字即可

 

3. PCH 文件配置

a. 找到 Project > Build Settings 搜索 “Prefix Header“;

b. 项目名字/PrefixHeader.pch (如 weihuan/PrefixHeader.pch );

c. 将Precompile Prefix Header改为YES,预编译后的pch文件会被缓存起来,可以提高编译速度;

注意:下图的 TARGETS 不是选 FastRenterTests ,应该选 FastRenter,否则找不到导入的类文件

 

4. PCH 文件常用

①导入头文件;

②写入常用的宏;

③定义常用的常量;

 

 

5. 创建文件时,自定义文件名前缀设置

 

 

项目名-Bridging-Header 配置

步骤一:####

创建头文件(该头文件是连接oc到swift的桥梁)
现在我们工程名为HeaderFile,在HeaderFile文件夹中右击项目,选择New File... -> iOS -> Source -> Header File,给文件命名后(头文件命名任意,假设为Header.h)保存。

步骤二:####

进入到Build Settings,找到Objective-C Bridging Header选项,把头文件的路径赋值给该选项。如图3所示:

 

注意

这样写可能会报错,Xcode 有时神经回搭错!若按以上步骤走,可能会报下面的错误:

这时应该吧上面的路径填写改一下,改为:HeadFile/HeadFile/Header.h 

这样就解决了,因为这个问题浪费我3个小时。

 日了?够了,我!

 

6. 宏定义的预处理命令

 1 #define:             定义一个预处理宏
 2 
 3  #undef:              取消宏的定义
 4 
 5  #include:            包含文件命令
 6 
 7  #include_next:       与#include相似, 但它有着特殊的用途
 8 
 9  #if:                 编译预处理中的条件命令, 相当于C语法中的if语句
10 
11  #ifdef:              判断某个宏是否被定义, 若已定义, 执行随后的语句
12 
13  #ifndef:             与#ifdef相反, 判断某个宏是否未被定义
14 
15  #elif:               若#if, #ifdef, #ifndef或前面的#elif条件不满足, 则执行#elif之后的语句, 相当于C语法中的else-if
16 
17  #else:               与#if, #ifdef, #ifndef对应, 若这些条件不满足, 则执行#else之后的语句, 相当于C语法中的else
18 
19  #endif:              #if, #ifdef, #ifndef这些条件命令的结束标志.
20 
21  defined:             与#if, #elif配合使用, 判断某个宏是否被定义
22 
23  #line:                标志该语句所在的行号
24 
25  #:                    将宏参数替代为以参数值为内容的字符窜常量
26 
27  ##:                   将两个相邻的标记(token)连接为一个单独的标记
28 
29  #pragma:              说明编译器信息
30 
31  #warning               显示编译警告信息
32 
33  #error:               显示编译错误信息

 

转载于:https://www.cnblogs.com/EchoHG/p/8322285.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值