MS Visual Studio 2017,来自 VisualC++ 类别的新 Windows 控制台应用程序项目。默认stdafx.h
标题包括以下行:
#include <stdio.h>
#include <tchar.h>
在他们下面:
// TODO: reference additional headers your program requires here
因为这个评论放在下面,而不是上面#include <stdio.h>
,我倾向于认为stdio.h
默认情况下包含它不是为了方便用户,他们可能#include
无论如何都会这样做,但出于某种原因需要吗?stdio.h
包含而不cstdio
只是似乎支持这种解释的事实?
我对吗?我可以安全删除#include <stdio.h>
吗?我问是因为我main
函数的第一行是:
std::ios_base::sync_with_stdio(false);
如果无论如何都在使用来自的设施,这显然是不正确stdio
的,因为包含此标头会暗示。
1)我可以安全地删除说的那行#include <stdio.h>
吗stdafx.h
?
2)我可以安全地打电话std::ios_base::sync_with_stdio(false)
吗?
tchar.h
3)默认情况下也包括在内的事实是否与此相关?