使用VS2010在项目中编写C++头文现出"PCH 警告:标头停止点不能位于宏或#if块中"

本文介绍了如何在Visual Studio 2010中解决预编译头文件(PCH)警告,特别是当头文件包含在宏或#if块中时。通过在头文件开头使用#pragma once指令,可以消除这种警告。


以#pragma once作为头文件的第一句就可以避免出现文章标题所说的警告问题,

例子如下:

 

C++项目使用预处理器件(通常称为PCH件,Precompiled Header的缩写)是为了加速编译过程。预处理器件包含了一些常用的件声明,这些声明在整个项目中会被频繁使用。以下是如何在预处理器件中添加`#include`指令的步骤: ### 1. 创建预处理器件 首先,创建一个预处理器件,通常命名为 `stdafx.h` `pch.h`。例如,创建一个名为 `pch.h` 的件。 ### 2. 添加 `#include` 指令 在 `pch.h` 件中,添加你需要的件。例如: ```cpp #ifndef PCH_H #define PCH_H // 准库件 #include <iostream> #include <unordered_map> #include <vector> #include <string> #include <algorithm> // 自定义件 #include "Course.h" #include "Student.h" #endif // PCH_H ``` ### 3. 配置项目使用预处理器件 #### 对于 Visual Studio: 1. 打开项目属性页(右键项目 -> 属性)。 2. 导航到“C/C++” -> “预编译”。 3. 设置“预编译”为“使用预编译”。 4. 设置“预编译件”为 `pch.h`。 5. 设置“预编译件输出件”为 `pch.pch`。 #### 对于 GCC/Clang: 1. 编译预处理器件生成预编译件: ```sh g++ -x c++-header pch.h -o pch.h.gch ``` 2. 在源件中包含预处理器件: ```cpp #include "pch.h" ``` ### 4. 在源件中包含预处理器件 在每个需要使用预处理器件的源件(`.cpp` 件)中,第一行应该包含预处理器件。例如: ```cpp #include "pch.h" // 其他代码 ``` ### 总结 通过以上步骤,你可以在项目的预处理器件中添加 `#include` 指令,并配置项目使用预处理器件。这将有助于减少编译时间,特别是对于大型项目
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值