我刚开始学习c ++而且我正在使用visual studio 2015.但是我必须在我的cpp文件中手动删除#include stdafx.h,然后再将它上传到我的班级的测试服务器,或者它只是发回一个像这样的错误:the error from test server
我想知道为什么会出现这个问题。我的猜测是这个东西是windows和基于x86的操作系统独有的吗? 任何帮助,将不胜感激。 :d
答案 0 :(得分:1)
stdafx.h
是Visual Studio项目的预编译头的默认名称。但是,您当然可以在其他环境中拥有一个名为this的文件。请注意,Visual Studio编译器处理此标头的方式与其他标头略有不同,如果它在项目的属性页中指定为预编译标头(C / C ++ - >预编译标题 - 请参阅here更多细节)。例如,具有不同预处理器定义的此文件的多个包含在被预编译头时将被忽略(这不是常见的,但需要注意的事项)。
如果要使非Visual Studio环境的可移植性更容易,通常可以更轻松地禁用Visual Studio项目中的预编译头文件。如果继续在代码中使用stdafx.h
文件,显然需要将其上传到测试编译服务器,并且可能需要修改它和/或将其包含在代码中。
答案 1 :(得分:1)
您需要上传所有您的来源。 stdafx.h
在这方面并不特别。当然,如果您的课程限制您使用.cpp上传,那么您就无法使用{{1}}进行该课程