C++命名空间

1.命名空间的定义

c++标准为了和C区别开,也为了正确使用命名空间,规定头文件不使用后缀.h,在C++采用命名空间可以将变量,函数,类很好的组织起来,避免冲突,命名空间实际上定义了一个范围。

namespace user

{

        int  a(10);

}

2.命名空间的使用

   ::域作用符  

    using namespace user;其作用域为该行代码的开始到代码结束。如果在块语句内部其作用域为定义开始到块语句结束。

    例:

    void test()

    {

using namespace user;

     }

     对user命名空间中的a进行赋值的时候要采用user::a=15;进行操作;

    当命名空间的名称长度较长的时候可以用 namespace r=user;进行重命名。

3.命名空间的嵌套

    在命名中间中可以进行命名空间的嵌套,即相同名称的命名空间是可以被多次声明的,例:

     namespace  user

     {

 int a(10);

namespace tianya

        {

          int b(20);

        }

    }

    此时对命名空间tianya的访问采用 user::tianya::b;

    如果此时采用 using namespace user::tianya进行访问则只有tianya是可见的。

4.命名空间的拓展

在一处写的命名空间可以在另一处进行扩展,例如可以对上面的user命名空间增加定义

      namespace user

     {

        char *name("helloworld");

     }

5.命名空间注意事项

    1、在命名空间中一般不直接写函数,当需要函数的时候采用函数指针的形式,这样的好处是易于更改

    例:

    namespace user{

        int (*p)(int,int)=add;

    }

    int add(int a,int b)

     {

 return a+b;

     }

     2、命名空间是透明的,所有的都是公有的,不能有private,类默认是私有的,结构体默认是公有的。

     

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值