c++ namespace 命名空间
using namespace std; //using编译指令, 它会一次性把std空间中的所有实体全部引进来
//要求:熟悉空间中的实体
//目前来说,不推荐使用
namespace wd
{
void display()
{
cout << "wd::display() " << endl;
}
}//end of namespace wd
namespace tls
{
void display()
{
cout << "tls::display() " << endl;
}
}//end of namespace tls
int main(void)
{
wd::display();//:: 作用域限定符, 这是完整形式
tls::display();
return 0;
}
using std::cout;// using声明机制, 简化操作, 不会把所有的实体引进来
//命名空间在一个文件之中可以出现多次
//相当于一个黑洞
namespace wd
{
int number = 10;
void show();//声明
}//end of namespace wd
namespace tls
{
void display()
{
cout << "tls::display() " << endl;
wd::show();
}
}//end of namespace tls
namespace wd
{
void display()
{
cout << "wd::display() " << endl;
tls::display();
}
void show()//实现
{
cout << "wd::show()" << endl;
}
}//end of namespace wd
int number = 10;
namespace wd
{
int number = 100;
namespace lwh
{
void display()
{
cout << "wd::lwh::display()" << endl;
}
}//end of namespace lwh
}//end of namespace wd
namespace tls
{
int number = 1000;
void display(int number)//形参number会屏蔽其他的number
{
cout << "number = " << number << endl;
cout << "wd::number = " << wd::number << endl;
cout << "tls::number = " << tls::number << endl;
cout << "全局变量 number = " << ::number << endl;//匿名命名空间
}
}//end of namespace tls