我的教授说了以下几点:
#include <iostream.h>
与:
相同#include <iostream>
using namespace std;
我有点困惑。 iostream
和iostream.h
之间有什么区别?
答案 0 :(得分:8)
iostream.h
不是标准C ++库的一部分,而iostream
是。iostream.h
。 std
中的名称不在iostream
名称空间中,而using namespace std
中的名称不在iostream
名称空间中。通过在包含iostream
之后发出指令iostream.h
,将在那里定义的所有名称(以及任何其他标准库中包含的名称)都带入全局名称空间。这通常不是一件好事,但它确实提供了标准版和非标准版之间的某种程度的等效性。
至于声称它们彼此“相同”,这是不太可能的。 {{1}}遵守标准,并且将会进化为w.r.t. {{1}}。如果考虑C ++ 11标准,则尤其如此。
答案 1 :(得分:1)
一些非常旧的编译器使用了iostream.h
,但它不是标准的一部分。只有无扩展头文件。现代标准兼容编译器甚至无法识别它。