ExampleTwelvea.cpp
上传用户:skywee
上传日期:2021-12-09
资源大小:141k
文件大小:1k
- //自定义一个名字空间NS1,对自定义名字空间成员的
- //定义类似于全局名字空间的成员定义
- namespace NS1
- {
- int i;
- }
- //名字空间可以分多处定义,此处在名字空间NS1中添加新的定义
- namespace NS1
- {
- //在名字空间中可以定义类型、变量、函数等,如果定义变量
- //该变量的的实例化时机可以认为等同于全局变量
- int j;
- //在同一名字空间中不可以有重复的定义,但是在不同的名字空间
- //可以,比如在a.cpp中有全局名字空间的类型CA的定义,在名字空间
- //NS1照样可以定义
- class CA
- {
- public:
- CA();
- };
- }
- //对名字空间内部的成员的使用,
- //应该遵循要么引入名字空间,要么用名字空间加作用域解析符的方式
- NS1::CA::CA()
- {}
- using namespace NS1;
- //引入多个名字空间,则要注意避免名字冲突的问题
- namespace NS2
- {
- int j=2;
- }
- using namespace NS2;
- int main(void)
- {
- i=9; //i的使用没问题
- //j=3; //j的使用导致了名字冲突
- //NS1::i=9; //对于上一句的情况,只能采用作用域解析符的方式
- //NS1::j=10;
- return 0;
- }