C++工程师笔试题目:iostream与iostream.h的区别1.docx
《C++工程师笔试题目:iostream与iostream.h的区别1.docx》由会员分享,可在线阅读,更多相关《C++工程师笔试题目:iostream与iostream.h的区别1.docx(3页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、 C+工程师笔试题目:iostream与iostream.h的区别 和是不一样,前者没有后缀,实际上,在你的编译器include文件夹里面可以看到,二者是两 个文件,翻开文件就会发觉,里面的代码是不一样的。 后缀为.h的头文件c+标准已经明确提出不支持了,早些的实现将标准库功能定义在全局空间里,声明在带.h后缀的头文件里,c+标准为了和C区分开,也为了正确使用命名空间,规定头文件 不使用后缀.h。因此,当使用时,相当于在c中调用库函数,使用的是全 局命 名空间,也就是早期的c+实现;当使用的时候,该头文件没有定义全局命名空 间, 必需使用namespace std,这样才能正确使用cout。
2、PS:namespace的使用: C+标准程序库中的全部标识符都被定义于一个名为std的namespace中。由于namespace的概念,使用C+标准程序库的任何标识符时,可以有三种选择: 1、直接指定标识符。例如std:ostream而不是ostream。完整语句如下: std:cout std:hex 3.4 std:endl; 2、使用using关键字。 using std:cout; using std:endl; 以上程序可以写成 cout std:hex 3.4 endl; 3、最便利的就是使用using namespace std; 例如: #include #include
3、#include using namespace std 这样命名空间std内定义的全部标识符都有效(曝光)。就似乎它们被声明为全局变量一样。那么以上语句可以如下写: cout hex 3.4 endl;由于标准库特别的浩大,所程序员在选择的类的名称或函数名时就很有可能和标准库中的某个名字一样。所以为了避开这种状况所造成的名字冲突,就把标准库中的一切都被放在名字空间std中。但这又会带来了一个新问题。很多原有的C+代码都依靠于使 用了多年的伪标准库中的功能,他们都是在全局空间下的。 所以就有了和 等等这样的头文件,一个是为了兼容以前的C+代码,一个是为了支持新的标准。命名空间std封装的是标准程序库的名称,标准程序库为了和以前的头文件区分,一般不加”.h”。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- C+ 工程师 笔试 题目 iostream 区别
限制150内