iOS .pch文件的使用

什么是.pch文件预编译头文件(一般扩展名为.PCH),是把一个工程中较稳定的代码预先编译好放在一个文件(.PCH)里。这些预先编译好的代码可以是任何的C/C++代码--甚至可以是inline函数,只它们在整个工程中是较为稳定的,即在工程开发过程中不会经常被修改的代码。我自己的理解就是  这个.pch文件的作用就是   在这里定义一些东西之后可以在整个工程内的任何一个文件中使用在.pch文件中定义的东西 并且不用导入任何的头文件我的做法: 1.首先呢我会先添加一个.h文件 用来写宏定义如图:
创建成功之后  可以在这个文件里边添加 一些自己需要的宏定义  比如:我的
//
//  Header.h
//  My9xiuShow
//
//  Created by TaoLi on 16/12/15.
//  Copyright © 2016年 LSS. All rights reserved.
//

#ifndef Header_h
#define Header_h


//字体颜色
#define RGBAColor(r,g,b,a) [UIColor colorWithRed:(r)/255.0 green:(g)/255.0 blue:(b)/255.0 alpha:a]

#endif /* Header_h */

 我只在这里边添加了一个宏

2.创建.pch文件 新建文件-选择pch文件

这样就可以创建一个.pch文件 SPrefixHeader

3.将Header.h 跟.pch文件产生联系打开.pch文件 添加 import “Header.h”

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import "Header.h"

代码如下:

#ifndef SPrefixHeader_pch
#define SPrefixHeader_pch

// Include any system framework and library headers here that should be included in all compilation units.
// You will also need to set the Prefix Header build setting of one or more of your targets to reference this file.

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>
#import "Header.h"

#endif /* SPrefixHeader_pch */

4.将.pch文件跟项目关联起来

buildSetting- 搜索prefix header  - 找到Prefix Header

如图:

1 将Precompile prefix header 设置为yes 这样的目的是编译之后这个文件会缓存 这样可以加快再次编译的速度

2 Prefix Header 后边双击 然后将新建的那个.pch文件拖进去(一次不成功就多试几次 然后就行了)拖进去之后将这个目录做修改只剩下自己的 项目名/.pch文件名 就像我的截图上那样 My9xiushow/SPreficHeader.pch5.这样的话就大功告成了: 人后 commend+b 编译下本项目 然后就可以使用了如我:rgb这个宏定义就可以使用了

--------------------修改----------拖进。pch文件之后   路径的问题注意下: ${SRCROOT}/xmChongGou/结构准备/xm_prefix.pch      写法就是
${SRCROOT}/     根目录
xmChongGou/结构准备/xm_prefix.pch   在根目录相处在的位置
这样的话  比较好 如若为水  为何不能嫌弃惊涛骇浪

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏coding

swoole创建tcp服务器tcp server使用telnet连接自定义 tcp client

3302
来自专栏互联网开发者交流社区

SpringBoot的日志

952
来自专栏技术小站

Spring,@Controller,@RequestMapping, @ResponseBody,@RequestParam

1073
来自专栏魏艾斯博客www.vpsss.net

Reset 复位插件 恢复 WordPress 数据库初始状态

Reset 复位插件主要用于给 wordpress 做一次“归零”操作,也叫初始化,也就是清理已安装过的数据。这样就可以免去重新配置网站的繁琐过程了。

1911
来自专栏Hadoop实操

如何为Hue添加自定义Banner

在用户使用Hue时,如果需要在Hue界面设置一些提示等信息(如:“Hue用户申请及权限放通,请联系xxx”)时。那这是我们可以通过配置在Hue界面添加该提示信息...

2023
来自专栏腾讯Bugly的专栏

腾讯Bugly Unity3D Plugin使用指南

概述 Bugly Unity Plugin是专为基于Unity引擎开发的跨移动平台(iOS/Android)游戏APP而开发的异常监控插件,它能够自动捕...

5345
来自专栏DannyHoo的专栏

解决socket服务器(chatserver)的问题

3.在控制器中,切换到解压后文件的路径。(   cd /###/##/Twisted-13.1.0.   )

1523
来自专栏世界第一语言是java

sb2.0新版springcloud微服务实战:Consul+Zuul+Feign/Ribbon+Hystrix Turbine+Config+sleuth+zipkin

本篇文章是springboot2.x升级后的升级springcloud专贴,因为之前版本更新已经好久了,好多人评论可不可以出个新版本,大家一定要注意,这是spr...

3192
来自专栏yukong的小专栏

【SpringBoot系列02】SpringBoot之使用Thymeleaf视图模板前言一、目标二、实现三、总结

Thymeleaf 是Java服务端的模板引擎,与传统的JSP不同,前者可以使用浏览器直接打开,因为可以忽略掉拓展属性,相当于打开原生页面,给前端人员也带来一定...

1032
来自专栏about云

flume与kafka整合高可靠教程

问题导读 1.安装kafka是否需要安装zookeeper? 2.kafka安装需要哪些步骤? 3.如何验证kafka是否安装成功? 4.flume sour...

6999

扫码关注云+社区

领取腾讯云代金券