命名空间的概念 C#中采用的是单一的全局变量命名空间。在这单一的空间中,如果有两个变量或函数的名字完全相同,就会出现冲突。当然,你也可以使用不同的名字,但有时我们并不知道另一个变量也使用完全相同的名字;有时为了程序的方便,必需使用同一名字。比如你定义了一个变量String user_name, 有可能在你调用的某个库文件或另外的程序代码中也定义了相同名字的变量,这就会出现冲突。命名空间就是为解决C#中的变量、函数的命名冲突而服务的。解决的办法就是将你的strTemp变量定义在一个不同名字的命名空间中。就好像张家有电视机,李家也有同样型号的电视机,但我们能区分清楚,就是因为他们分属不同的家庭。 当然,我们也可以使用程序开头的using编译指示来使用命名空间中的名字。使用using编译指示的好处在于在程序中不必显式地使用命名空间限制符来访问变量。
相当于文件夹的意思,为了能够更好的找到和识别文件。
namespace,即名字空间,是指标识符的各种可见范围。C++标准程序库中的所有标识符都被定义于一个名为std的namespace中。
不定义名字空间的情况下,都属于全局名字空间,同一个名字空间可以定义多次,名字空间除了系统定义的名字空间之外,还可以自己定义,定义名字空间用关字namespace,使用名字空间时用符号指定。
不指定名字空间的变量或函数都是当前名字空间下的变量或函数。
用别名指定名字空间名字空间可以一层层嵌套,指定时也得一层层地指定,这样很不方便,一般用别名代替就方便多了。
没有名字的名字空间名字空间的名字也可以省略,称之为无名名字空间,无名名字空间经常被使用,其作用是“内部可以引用,而外部不能引用。