namespace X{ f();...} 使用声明:可以访问名字空间中成员(单个) 推荐使用! using X::f; 使用指示:直接访问名字空间的全部成员 using namespace X; 不允许将使用指示作为类的成员,而可以将使用声明作为类的成员。 可以为长的名字空间提供短的别名 :namespace ATT=American_Telephone_and_Telegraph; 还可以使用名字空间管理版本问题。 匿名名字空间在其他方面与别的名字空间完全一样,只是不需要去说 它的名字罢了。 如namespace {... }等价于namespace unique_name { ... } using namespace unique_name; 局部声明的名字遮蔽名字相同的非局部声明, ::f的意思是"在全局作用域里声明的那个f",X::f意味着"在名字空间X里声明的那个f" !全局变量应该是与main函数在同一个级别上,并且与main函数不属于同一个名字空间) 一个类在某种意义下就是一个名字空间,对名字空间可以做的所有操作都能够在同样意义下 应用到类上,除非某个操作是类所明确禁止的。 #include
//int b=3; namespace X { int a=1; int b=2; } using namespace X; using std::cout; using X::b; void main() { //int i1=::a; int i2=::b; //cout<<"i1 is"<
<
名字空间
最新推荐文章于 2020-02-29 11:12:23 发布