iostream VS iostream.h
iostream与iostream.h二者明显区别即为有无后缀。
在c++中,为与c相区别开以及能够正确使用命名空间,规定头文件不使用.h后缀。
当使用"iostream.h"时,代表从c中调用库函数,使用的是全局命名空间;
当使用iostream时,该头文件中没有定义全局命名空间,必须使用namespace std;这样才能使用cout。
那么何为namespace???
答:namespace是指标识符的各种可见范围。
c++中所有标识符都被定义在一个名字叫做std的namespace中。
由于namespace这一概念的存在,在c++标准程序库中使用任何标识符,有三种选择,其中,常用也是最简便的就是第三种。
第一种:直接指定标识符
eg:完整的语句就是 std::cout<<std::hex<<3.4<<std::endl;
第二种:使用using关键字
eg:using std::cout using std::cin using std::endl
即:using std::cout<<using std::hex<<3.4<<using std::endl;
第三种:使用using namespace std;
eg:#include"iostream"
#include"sstream"
#include"string"
using namespace std; //这样std命名空间中的所有标识符都有效。就好像它们都被声明为全局变量一样。

浙公网安备 33010602011771号