记录下stdafx.h的困惑
不使用预编译:
C++ 编译器在对每个cpp文件进行编译的时候,会对#include,#define 等进行文本替换生成编译单元。如果同一个头文件被多个cpp多次包含,就要重复编译,影响效率。使用预编译:
在stdafx.h中包含需要预编译的头文件(当然也可以是其他文件),设置stdafx.cpp文件的属性,预编译头设置为 创建。对于原先包含A.h的cpp文件,删除#include “A.h”,改成包含stdafx.h,同时设置这些cpp文件的属性,预编译头设置为 使用。这样的话,下次编译A1.cpp,A2.cpp的时候,对于A.h头文件中的那部分,就不需要编译了,节省时间。补充说明
虽然vs会根据时间戳而只重新编译修改过的cpp文件,但是所包含的头文件也会被重新编译。