Par*_*ius 7 c++ namespaces header std include
我收到一个错误,编译一个C++程序,其中的行从"std :: system(SomeString)"调用.这个程序是在3年前编译的,但是在今天编译时,我收到一个错误,指出'system'不是'std'的成员.有什么东西我必须导入使用std :: system,它已被放弃,或它已移动到另一个头文件.
Ste*_*sop 25
std::system是(并且一直都是)<cstdlib>.
C++标准没有定义标准头是否相互包含,以及是否包含哪些标头.所以有可能在3年前,在不同的编译器或同一编译器的不同版本上,您的代码偶然起作用,因为您包含的其中一个标题恰好包括在内<cstdlib>.在您现在使用的编译器/版本上,它没有.