标签:小明 空间 通过 直接 bsp style 头文件 ons pac
实际上就是一个由程序设计者命名的内存区域,程序设计者可以根据需要指定一些有名字的空间域,把一些全局实体分别放在各个命名空间中,从而与其他全局实体分隔开来。 其实就是为了解决函数,变量冲突而提出的。命名空间可以包含以下几个内容:(花括号内不仅可以包括变量,而且还可以包括以下类型)
·变量(可以带有初始化);
·常量;
·数(可以是定义或声明);
·结构体;
·类;
·模板;
·命名空间(在一个命名空间中又定义一个命名空间,即嵌套的命名空间)。
1 namespace nsl 2 { 3 const int RATE=0.08; //常量 4 double pay; //变量 5 double tax() //函数 6 {return a*RATE;} 7 namespace ns2 //嵌套的命名空间 8 {int age;} 9 }
可以使用作用域解析符号 : : 来使用命名空间下的变量,函数以及类等等(其实就是相当于比如年级一班和二班都有小鸣,开年级大会点名时,只有在小明的前面加上班级才能分清楚),但是每次都是这样会有些麻烦,所以我们可以用using声明和using编译指令来简化这一行为。using声明:using ns1::pay;进行声明过后我们可以直接使用pay变量了;using编译指令是指:using namespace ns1;告诉编译器这个名命空间的所有元素我都可以使用,这是一种非常偷懒的做法。定义在namespace中的元素必须通过以上的三种方式才能够使用!在一般情况下我们在头文件中声明,在源文件中定义。
由上可知命名空间可以嵌套使用,即在命名空间中可以定义命名空间也可以在命名空间使用using声明和using编译指令,这里要注意的是using编译指令是可以传递的,若A中用using编译指令使用B,如果有代码用using编译指令使用A,则与此同时B也用using编译指令过了。不仅如此头文件使用using编译指令使用B,则与此同时B也用using编译指令过了。命名空间是可以不连续的,也就是说可以在多个文件中完成对一个命名空间的补充。
标签:小明 空间 通过 直接 bsp style 头文件 ons pac
原文地址:https://www.cnblogs.com/yskn/p/8979465.html