stdafx.h
文件的目的是什么?预编译头又是什么意思?在其他优秀的答案上进行补充:
stdafx.h
是一个文件,它包含单个项目中所有常用头文件。例如,这将包括所有Windows定义。因为该文件包括了很多内容,所以编译器处理它时会有点慢。通过预编译它,编译器可以跳过大部分处理,并反复重用它。只要被它包含的文件没有更改,预编译结果也不需要更改。
stdafx.h
的名称只是惯例。如果您将所有源文件更改为包含新文件,则可以轻松地将其重命名为其他名称。
要生成实际的预编译头文件,您需要在项目中有一个具有特殊编译标志以产生预编译输出的源文件。按照惯例,这个文件的名称为stdafx.cpp
,如果您检查该源文件的设置,您将看到它与其他文件不同。
这通常用于预编译头文件的名称。虽然不一定需要使用该确切名称,但默认情况下应如此。 在这里我解释了有关VC++和g++上预编译头文件的更多信息。
您可以使用预编译头文件来加快编译速度。
其思想是将任何不会更改且在多个源文件中使用的头文件放置在预编译头文件中。然后编译器就不需要为每个编译单元重新处理这些头文件。
#include "stdafx.h"
之前的所有内容,这一点非常重要。我以前就中过这个招。 - Mark Ransom