C++匿名命名空间
匿名命名空间的价值
匿名命名空间中的符号纯文件内部使用,不需要被外部文件引用类似于全局变量和函数加static,一般在跨文件中使用到其特性
嵌套命名空间
#include<iostream>
void fun5(void);
namespace NS
{
using namespace std;
namespace NS2
{
void fun2(void)
{
cout <<"fun2 printf\r\n"<< endl;
}
}
void fun1(void)
{
cout <<"fun1 printf\r\n"<< endl;
NS2::fun2();
}
}
using namespace NS;
int main(void)
{
fun1();
//NS::NS2::fun2();
return 0;
}
嵌套命名空间所要注意的点,引入的命名空间不能冲突例如using namespace NS; 在引入NS2::fun2();会报错,所以应用的命名空间必须一致,命名空间中引用嵌套在其的命名空间内的函数有先后问题