c++ 命名空间

来源:互联网 发布:mac翻墙教程 编辑:程序博客网 时间:2024/05/22 18:33
#include <stdio.h>// namespace是一个关键字,用来定义命名空间namespace NameA{int a;void swap(int *a, int *b){int temp = *a;*a = *b;*b = temp;}namespace NameAA{};struct A{};};int a;int main2_3(){// 对命名空间中单个元素使用using NameA::swap;int b = 20;int c = 30;swap(&b, &c);a = 90;return 0;}void func(){}// 2、使用 using 关键字int main2_2(){// 表明使用命名空间NameA中的内容// 但凡在这个声明之后使用的变量或者函数等,只要没指明具体的命名空间// 都将使用NameA中的内容// using 有效范围是当前的大括号{}using namespace NameA;  NameA::a = 100;// :: 不加前不加名字,代表使用默认的命名空间::a = 20;func();printf ("a = %d, %d\n", NameA::a, ::a);int b = 10;int c = 20;// swap 没有指明命名空间// 但是之前有了 using namespace NameA;  而 NameA中有 swapsswap (&b , &c);return 0;}// 命名空间的使用,1、域解析符::int main2_1(){a = 10;   // 全局的aNameA::a = 20;  // 使用命名空间 NameA中的变量aint b = 1;int c = 2;NameA::swap(&b , &c);printf ("b = %d, c = %d\n", b, c);return 0;}

原创粉丝点击