初步认识c++之命名空间详解(千字长文带你刨析你命名空间的细节)
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了初步认识c++之命名空间详解(千字长文带你刨析你命名空间的细节)相关的知识,希望对你有一定的参考价值。
初识c++之命名空间详解
1.命名空间 :namespace
当我们使用命名空间的时候
就会发现原本的报错就消失了!这就是命名空间的功能:==影响编译查找规则==!
1.1域作用限定符 ::
1.2命名空间的本质
1.2.1命名空间中的变量!
1.3命名空间的合并和嵌套
//上面的程序等同于
namespace test
struct ListNode
int val;
struct ListNode* next;
;
namespace test
struct stack
int* a;
int top;
int capacity;
;
int main()
test::ListNode a;
a.val = 0;
a.next = NULL;
test::stack b;
b.capacity = 0;
b.top = 0;
b.a = NULL;
printf("val:%d capacity:%d top:%d", a.val, b.capacity, b.top);
namespace test
struct ListNode
int val;
struct ListNode* next;
;
namespace test
struct stack
int* a;
int top;
int capacity;
;
int main()
test::ListNode a;
a.val = 0;
a.next = NULL;
test::stack b;//test::test::stack b;这才是正确写法
b.capacity = 0;
b.top = 0;
b.a = NULL;
printf("val:%d capacity:%d top:%d", a.val, b.capacity, b.top);
//这样写的话程序就会出现报错!
1.4官方命名空间std
以上是关于初步认识c++之命名空间详解(千字长文带你刨析你命名空间的细节)的主要内容,如果未能解决你的问题,请参考以下文章
c++之类和对象——类的定义,存储方式,this指针!(五千字长文详解!)