这段时间集中解决了一个stdafx的问题, 一点零散总结
预编译头文件(扩展名为.PCH)是把一个工程中较稳定的代码预先编译好放在一 个中间形式的文件中(PCH文件),编译器可以更加快捷的使用这个文件,减少编译时间。预先编译好的代码可以是任何的C/C++代码。
预编译头文件的目的就是提高编译速度。编译器以文件为单位编译,如果修改了一工程中的一个文件则所有文件都要重新编译,包括头文件里的所有东西。在比较大的C/C++程序中,这些头文件中所包括的东西往往很大,编译时间很长。其中一部分头文件不常被修改,为了减少因为修改A文件而去编译没有任何修改的B头文件,将B头文件加入PCH文件中,避免重复编译。
一般情况下,预编译头文件使用stdafx.h和stdafx.cpp;当然也可以用其他的文件名。具体方法如下:
1. 在项目属性中定义Create/Use Precompiled Header: Use Precompiled Header(/Yu),并指定Create/Use PCH Through File 为 stdafx.h
2. 修改stdafx.cpp的编译属性,Create/Use Precompiled Header: Create Precompiled Header (/Yc), Create/Use PCH Through File 指定为stdafx.h。
预编译头文件应当只include大的并且影响编译速度的头文件。最典型的就是windows.h,还包括STL头文件。 自己编写的的头文件一般来说不应当被include在stdafx.h中,因为变化很频繁。例外情况是,某些头文件基本稳定而且在很多文件中被include。
#define of WIN32_LEAN_AND_MEAN。WIN32_LEAN_AND_MEAN的目的就是减少Windows.h以及其所包含的头文件中那些老版本的,不常用的部分。
将source文件(特别是大量的小文件)用include指令合并到少量的几个文件,然后编译这个文件会减少编译时间。
预编译代码:
自动预编译和手动预编译:http://msdn.microsoft.com/en-us/library/2yzw0wyd%28vs.71%29.aspx
分享到:
相关推荐
编译器通过一个头文件stdafx.h来使用预编译头文件。stdafx.h这个头文件名是可以在project的编译设置里指定的。编译器认为,所有在指令#include "stdafx.h"前的代码都是预编译的,它跳过#include "stdafx. h"指令,...
友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下步骤操作: 1将StdAfx.h、StdAfx.cpp移出项目,并添加pch.h、pch.cpp 2选中整个项目,项目-属性-C++-预编译头-预...
友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下步骤操作: 1将StdAfx.h、StdAfx.cpp移出项目,并添加pch.h、pch.cpp 2选中整个项目,项目-属性-C++-预编译头-预...
友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下步骤操作: 1将StdAfx.h、StdAfx.cpp移出项目,并添加pch.h、pch.cpp 2选中整个项目,项目-属性-C++-预编译头-预...
友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下步骤操作: 1将StdAfx.h、StdAfx.cpp移出项目,并添加pch.h、pch.cpp 2选中整个项目,项目-属性-C++-预编译头-预...
友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下步骤操作: 1将StdAfx.h、StdAfx.cpp移出项目,并添加pch.h、pch.cpp 2选中整个项目,项目-属性-C++-预编译头-预...
友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下步骤操作: 1将StdAfx.h、StdAfx.cpp移出项目,并添加pch.h、pch.cpp 2选中整个项目,项目-属性-C++-预编译头-预...
友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下步骤操作: 1将StdAfx.h、StdAfx.cpp移出项目,并添加pch.h、pch.cpp 2选中整个项目,项目-属性-C++-预编译头-预...
友情提示,为了兼顾一些旧代码,预编译头文件用的是StdAfx.h,如果需要更换为最新的pch.h,请按照以下步骤操作: 1将StdAfx.h、StdAfx.cpp移出项目,并添加pch.h、pch.cpp 2选中整个项目,项目-属性-C++-预编译头-预...
预编译头的使用: 要使用预编译头,我们必须指定一个头文件,这个头文件包含我们不会经常改变的 代码和其他的头文件,然后我们用这个头文件来生成一个预编译头文件(.pch文件) 想必大家都知道 StdAfx.h这个文件。...
在Visual Studio中,这种预编译头文件通常命名为`stdafx.h`或`pch.h`,并在源代码文件的开始处使用`#include "stdafx.h"`或`#include "pch.h"`来包含它。 但请注意,这种做法并不适用于所有项目或所有编译器。一些...
控制台应用程序:camshift_kalman 项目概述 本文件概要介绍组成 camshift_kalman 应用...StdAfx.h, StdAfx.cpp 这些文件用于生成名为 camshift_kalman.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。
以 <br>下是注意事项: <br>1):如果使用了/Yu,就是说使用了预编译,我们在每个.cpp文件的最开头,我强调一遍 <br>是最开头,包含 你指定产生pch文件的.h文件(默认是stdafx.h)不然就会有问题。...
VS2017以上可运行,仅共学习使用。版权侵删 // stdafx.cpp : 只包括标准包含文件的源文件 // 俄罗斯.pch 将作为预...#include "stdafx.h" // TODO: 在 STDAFX.H 中引用任何所需的附加头文件, //而不是在此文件中引用
StdAfx.h、StdAfx.cpp 这些文件用于生成名为 GameServer.pch 的预编译头(PCH)文件以及名为 StdAfx.obj 的预编译类型文件。 Resource.h 这是标准的头文件,它定义了新的资源 ID。 Microsoft Visual C++ 读取和...
StdAfx.h、StdAfx.cpp 这些文件用于生成名为 ExpressionProcess.pch 的预编译头 (PCH) 文件以及名为 StdAfx.obj 的预编译类型文件。 Resource.h 这是标准的头文件,它定义了新的资源 ID。 Microsoft ...
修改系统文件 modifyfile.vcproj 这是使用“应用程序向导”生成的 VC++ 项目...StdAfx.h、StdAfx.cpp 这些文件用于生成名为 modifyfile.pch 的预编译头 文件 (PCH)和名为 StdAfx.obj 的预编译类型文件。 Resource.h
StdAfx.h, StdAfx.cpp 这些文件用于生成名为 1-1.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。 ///////////////////////////////////////////////////////////////////////////// 其他注释: ...
StdAfx.h, StdAfx.cpp 这些文件用于生成名为 TextDetect.pch 的预编译头 (PCH) 文件和名为 StdAfx.obj 的预编译类型文件。 ///////////////////////////////////////////////////////////////////////////// 其他...
<br/>///////////////////////////////////////////////////////////////////////////// 其他标准文件: <br/>StdAfx.h, StdAfx.cpp 这些文件用于生成名为 Win32.pch 的预编译头(PCH)文件 ...