#include <iostream.h> 和 #include <iostream> 有什么区别?

9
这两个有什么区别呢? #include <iostream.h> 是旧式的头文件,而 #include <iostream> 是新式的头文件。在 C++11 标准中,旧式的头文件已经被弃用,建议使用新式的头文件。
3个回答

18

在C++标准化之前,I/O库被开发为<iostream.h>。然而,那个头文件从来没有成为标准的C++头文件。一些旧的编译器继续分发<iostream>头文件也作为<iostream.h>。使用<iostream>因为它被标准保证存在。

值得注意的是,仅以.h结尾的标准头文件是C标准库头文件。所有C++标准库头文件都不以.h结尾。


1
在过渡期间,有些编译器提供了一个包含<iostream>(加上一些using,这样你就不需要std::)的<iostream.h>;还有一些编译器的<iostream>包含了<iostream.h>(并且编译器被修改为使std::::相同)。 - James Kanze
关于命名规范的额外问题:为什么它被命名为<iostream>而不是<stdiostream>?或者反过来:为什么它被命名为<stdexcept>而不是<except> - pmor

4

<iostream> 是常用的头文件。

<iostream.h> 是旧的头文件,有些编译器不再支持它。


0

这取决于您的工具链提供的文件名称。 一些(旧的)编译器使用 .h 文件。 现代编译器通常使用 <iostream>(没有 .h 扩展名)。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接