美丽乡村 网站建设,服装网站论文,产品如何推广市场,网站建设难点词源简介
stdafx.h: 即Standard Application Framework Extensions #xff0c;中文名为#xff1a;标准应用程序框架的拓展#xff0c;也称预编译头文件#xff0c;曾有一个专门搞ApplicationFrame的技术团队#xff0c;被命名为afx#xff0c;加上x只是为了口号更响亮…词源简介
stdafx.h: 即Standard Application Framework Extensions 中文名为标准应用程序框架的拓展也称预编译头文件曾有一个专门搞ApplicationFrame的技术团队被命名为afx加上x只是为了口号更响亮而已…orz
功能简介
1 预编译头文件
所谓预编译头文件就是把一个Project中使用的一些MFC标准头文件如Windows.h等预先编译以后编译该工程时直接使用预编译的结果即可一次编译重复使用贼好使嘿嘿…Emm…Borland公司最先采用了这种技术而非Microsoft 编译器认为所有指令#includestdafx.h前的代码都是预编译的将被忽略它跳过#includestdafx.h指令使用projectname.pch拓展名为.pch表示预编译后的头文件继续编译这条指令之后的所有代码
2 stdafx.h
从内容上来说头文件stdafx.h主要包含标准头文件stdio.h、string.h等标准C的头文件以及项目中的不会轻易改动的头文件
头文件夹下默认有stdafx.h源文件夹下默认有stdafx.cpp手动删除后编译时系统报错stdafx.h并不是标准的C头文件本质上相当于VS默认的自定义文件可修改其namepath及内涵等你编写的任何.cpp文件都必须首先包含stdafx.h所有MFC实现文件的第一条语句都是#includestdafx.h预编译头文件包含有众多头文件的处理信息符号信息故而其本身会占用较大的存储空间它是你工程文件里最大的文件可以注意清理不需要的预编译头
3 预编译头的设置
可以在项目-属性-c/c±预编译头进行设置
开启、关闭预编译头改变预编译头的名字所以并一定用stdafx名字修改预编译头输出文件的路径
4 关于报错
无法打开预编译头文件xxx.pch:no such file or directory 的问题 分析根据上面的原理解释可能是由于编译器无法通过stdafx.cpp创建一个预编译文件从而其他文件没有办法去引用该pch文件 解决方案选中源文件stdafx.cpp右键 - 属性 - C/C - 预编译头出现上述问题一般是由于预编译头的选项从 创建 变为了 使用通过将选项重新改为创建可解决问题在查找预编译头文件时遇到意外的文件结尾 需要将指令#includestdafx.h 放在每个文件的开始位置以供处理
5 附注
在Visual Studio2017的最新版本中pch.h即相当于stdafx.h的预编译功能貌似还更强一些…pch.h的路径位置在工程创建时就已经被安排地明明白白了不需要将其调整到工程统一的头文件包含目录中去
参考文献
CSDN博客文https://blog.csdn.net/follow_blast/article/details/81704460