1
、
using namespace
名称空间主要是为了解决在大的互相合作的工程中,出现像变量、函数、结构、枚举、类以及类和结构的成员的名称相互冲突的可能。
Declaration region:声明区域,是可以在其中进行声明的区域。
Potential scope:潜在作用域,变量的潜在作用域是从声明点开始,到其声明区域结束。由于变量必须在声明之后在能使用,因此潜在作用域比声明区域小。
注意:注意变量并非在其潜在作用域中任何位置都是可见的。如,它可能被在嵌套声明区域中声明的同名变量隐藏。
using
声明和
using
编译指令:
using
声明是将特定的名称添加到它所属的声明区域中。它像其他的变量一样,能够覆盖同名的变量。
using
编译指令是使所有的名称都可以用。它是由名称空间名和关键字
using namespace
组成,使名称空间中的所有名称都可用,而不需要使用作用域解析操作符。
using
编译指令将名称空间的名称视为函数之外声明的,但它不会使得该文件中的其他函数能够使用这些名称。一般来说,使用
using
声明比使用
using
编译指令更安全。
我们在编程中要尽可能地参考一下一些原则:
1、
使用在已命名的名称空间中声明的变量,而不使用外部全局变量和静态全局变量。
2、
尽量将自己开发的一组有逻辑关系的类库和函数库,放人一个名称空间中。
3、
仅将
using
编译指令作为将旧代码转换为使用名称空间的权宜之计。
4、
不要在头文件中使用
using
编译指令。如果一定要使用,请放在
#include
之后。
5、
在导入名称时,优先使用
using
声明的方法。
6、
对于
using
声明,首选将其作用域设置为局部而不是全局。
<script src="http://s.vdoing.com/u/107/54977.js" type="text/javascript"></script>