目录
1.什么是命名空间?
由编写者主动命名的区域,内部的函数、变量等与外部分隔开,关键字是namespace
namespace A
{
int a = 0;
}
特点:
(1)在命名空间中的变量也是全局变量
(2)命名空间不改变生命周期,只影响域
(3)不同命名空间可以定义同名变量,且互不干扰
(4)由于命名空间影响了编译器的查找规则,编译器不会主动查找命名空间的成员
(5) 命名空间内部可以嵌套命名空间
2.使用命名空间
1.使用域作用限制符 :: 来访问命名空间
namespace A
{
int a = 0;
}
int mian()
{
cout << A::a << endl;
rerturn 0;
}
2.全部展开命名空间
using namespace A;//展开命名空间A
namespace A
{
int a = 0;
}
int main()
{
cout << a << endl;
return 0;
}
using namespace std;//展开所有命名空间
namespace A
{
int a = 0;
}
int main()
{
cout << a << endl;
return 0;
}
3.指定展开
using A::a;//指定展开命名空间A中的a变量
namespace A
{
int a = 0;
}
int main()
{
cout << a << endl;
return 0;
}