我的教授说:
#include <iostream.h>
是相同的:
#include <iostream>
using namespace std;
我有点困惑。iostream
和 和有什么不一样iostream.h
?
我的教授说:
#include <iostream.h>
是相同的:
#include <iostream>
using namespace std;
我有点困惑。iostream
和 和有什么不一样iostream.h
?
iostream.h
不是标准 C++ 库的一部分,而iostream
它是。iniostream.h
中的名称不在std
命名空间中,而in 在名称空间iostream
中。using namespace std
通过在 include之后发出指令,在iostream
那里(以及在任何其他标准库包含中)定义的所有名称都被带入全局命名空间。这通常不是一件好事,但它确实在标准版本和非标准版本或预标准版本之间提供了某种程度的等效性。
就声称它们彼此“相同”而言,这是不可能的。iostream
遵守标准,并且会进化 wrt iostream.h
。如果您考虑 C++11 标准,则尤其如此。
Some very old compilers have used iostream.h
, but it's not part of the standard. Only the extensionless header files are. It won't even be recognized by modern standard-compliant compilers.