#include<iostream> #include<string> using namespace std; namespace a{ int x=6;int k=10;}; namespace b{ int x=2;int l=90;}; namespace c{ int y=3;int m=40;}; int main() { //第一种访问方式。直接访问 cout<<"a的x"<<a::x<<endl<<"b的x"<<b::x<<endl; //利用空间名称+对象名称来说明对象 //cout<<k<<endl;只能访问x,而不能访问k //第2种访问方式 using b::x;//b的x成为局部变量 cout<<x<<endl; //输出的是b的x //int x=4; 和前面b的冲突 //cout<<l<<endl;同样只使x成为局部变量,而l还是隐藏着 //第三种访问方式 //cout<<y<<endl;直接输出y错误,因为还隐藏着 using namespace c;//使c不在隐藏 cout<<y<<endl; cout<<m<<endl;; int y=100;//还可以定义y cout<<y<<endl;//输出的是新定义的y return 0; }