在Visual Studio c ++中,默认情况下似乎包含一些标头。例如,我可以使用std::strncpy
或std::string
不包含<string>
或<cstring>
,但是我不能使用std::cout
或std::min()
不包含<iostream>
或<algorithm>
。
然后,当我想用g ++在UNIX上编译源代码时,如果我忘记添加由于Visual Studio隐式包含而没有使我感到热心的包含,则会出现编译错误。
默认包含的内容来自Visual Studio?有没有一种方法可以停用将来和现有项目的这种行为?注意:我的Visual Studio项目未使用预编译的头文件。
默认情况下,Visual Studio不包含标题。但是,某些标头包含其他标头,因此,如果包含<iostream>
,则有时可能包含<string>
在某些编译器中,并且许多标头也包含<cstring>
。因此,您意外地将自己包括在内。
哪个标头包含哪些其他标头因库而异,因此始终明确包含该文件使用的标头。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句