我有一个非常大的项目,为了编译速度的缘故,我开始测试预编译头文件。
我现在已经设置好了:
- 在VS中启用预编译头文件(仅为
StdAfx.h
创建项目并将其用于项目) - 为除
StdAfx.h
之外的所有文件使用多处理器编译 - 通过VS的强制包含自动包含所有文件中的
StdAfx.h
现在出现的问题是:
我是否需要删除添加到StdAfx.h
文件中的所有项目文件的所有包含,还是这是不必要的?编译器是否会自动跳过任何包含,因为它知道它是StdAfx.h
的一部分,或者我应该手动从每个.h
/.cpp
文件中删除它们?
#pragma once
代替或附加到包含保护(目前我在大多数文件中使用包含保护)会产生明显的差异吗? - prom85