47.命名空间namespace
程序员文章站
2022-07-09 22:59:04
...
每个命名空间就是一个作用域。
命名空间是不连续的,存在则追加,不存在则创建。
内联命名空间,可以使得最外层的命名空间直接使用内层任何一层的成员名字,而无需添加中间层的命名空间的名字。
未命名的命名空间中定义的成员具有静态生命周期,声明时创建,程序结束时销毁。内层未命名的命名空间可以直接使用外层命名空间的名字直接访问成员。
命名空间的别名
namespace abcdefj{
void hhhh() {std::cout<<"hello"<<std::endl;}};
namespace b = abcdefj;
b::hhhh();
命名空间与函数重载与二义性。
namespace a {
namespace {
void print(std::string &&s) { std::cout << "namespace::print" << std::endl; }
}
void print() { std::cout << "a::print" << std::endl; }
}
namespace b {
void print(int &s) { std::cout << "b::print" << std::endl; }
}
namespace c{
using namespace a;
using namespace b;
void print(double &&s) { std::cout << "c::print" << std::endl; }
}
int main()
{
using namespace c;
print("meiyusb");
print(2.3);
system("pause");
return 0;
}
上一篇: 十重境界
下一篇: [C++]名称空间namespace
推荐阅读
-
PHP命名空间(Namespace)简明教程
-
thinkphp autoload 命名空间自定义 namespace
-
System.Web中不存在类型或命名空间名称“Optimization”(是否缺少程序集引用?)
-
System.Web中不存在类型或命名空间名称script 找不到System.Web.Extensions.dll引用
-
php 命名空间(namespace)原理与用法实例小结
-
PHP 面向对象程序设计(oop)学习笔记 (五) - PHP 命名空间
-
Python中将字典转换为XML以及相关的命名空间解析
-
解读Python编程中的命名空间与作用域
-
第十四节 命名空间 [14]
-
java 命名空间 命名规则第1/2页