首先我们先看一下下面这段代码运行时的情况(注意按ctrl+F5 运行)
#include<iostream>
int main()
{return 0;
}
运行结果如下
是一个没有任何结果的窗口
现在我们再加上一段输出代码
cout<<"hello"<<endl;
会发现编译运行时出现了错误,显示wei3声明的标识符其实就是少了工作空间 std的引入
如果引入工作空间 就不会出现下面错误
using namespace std;
在C++中可以引入已经定义好了的工作空间,同时也可以自己定义工作空间。上面的代码是等同于下面这段代码的
#include<iostream>
int main()
{std::cout<<"hello"<<std::endl;return 0;
}
运行出来的结果完全一样,也就是说在整个程序前面引入这个std工作空间,就可以节省繁琐的“std::”,这样便于程序员编写代码。
比如我现在自定义两个命名空间A和B
然后分别对其进行相应的输出
代码如下
#include<iostream>
using namespace std;
namespace A{int x=1;void f(){cout<<"A"<<endl;}
}
namespace B{int x=2;void f(){cout<<"B"<<endl;}
}
int main()
{cout<<A::x<<endl;B::f();return 0;
}
输出结果为
1
B
另外给出一个实例供参考
namespace实例
#include <iostream>
#include <stdlib.h>
using namespace std;
namespace sp //填写命名空间的关键字
{int x = 105;
}
int main()
{// 使用bool类型定义isOdd,作为状态位bool isOdd ; if(sp::x % 2 == 0){//改变状态位的值,使其为falseisOdd=false;}else{//改变状态位的值,使其为trueisOdd = true;}// 判断状态位的值if(isOdd==true){// 如果状态位的值为true,则打印变量x是奇数cout<<"变量x是奇数"<<endl;}else{// 如果状态位的值为false,则打印变量x是偶数cout<<"变量x是偶数"<<endl;}return 0;
}