您的位置:首页 > 编程语言 > C语言/C++

C++之命名空间的使用

2014-05-01 23:04 357 查看

1.命名空间的概念和使用

C中:   

    int num = 66;

    int num = 66;//编译报错,出现重定义的错误

C++中:

    命名空间1

    {int num = 66;}

    命名空间2

    {int num = 66;}

1.1  自定义命名空间的格式

   namespace 命名空间的名字

   {

    名字空间的成员:变量、函数.......

   }

注意:
格式和结构体的定义非常相似,但是大括号后面没有分号,命名空间仅仅是一个作用域的限定,并不是一种新的数据类型

1.2  导入命名空间的方式

  (1)使用名字空间指令的方式导入命名空间中的所有的数据

  如:using namespace std;

  (2)使用名字空间声明导入命名空间中的部分内容  (推荐使用)

    如: using std::cout;

        using std::endl;

        ::  -->作用域限定符,表示谁里面的,相当于“的”

  (3)使用作用域限定符

  如: std::cout <<"大家好!" << std::endl;

1.3 无名名字空间

          如果一个标识符没有被放置于任何命名空间下,则默认为无名名字空间,可以使用以下方式引用无名名字空间的成员:

       ::无名名字空间成员名

       使用到全局变量或函数时使用  ::g_count;表示使用的是全局变量

1.4 命名空间的扩展

(1)同一个命名空间的内容是可以分开写的,并且命名空间中 函数的声明和定义也是可以分开写的;

(2)命名空间可以嵌套,嵌套的命名空间可以使用起别名的方式来简化以后使用时的书写;

如:namespace ns = face::nose::moth1311;
ns::show(); ==  face::nose::moth1311::show();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: