命名空間及其用法(C++)

來源:互聯網
上載者:User

標籤:class   一個   聲明   作用   建立   範圍   擴充   函數名   子空間   

目錄

  • 一、什麼是命名空間
  • 二、命名空間的具體工程用例

題記:命名空間下 不知道是不是還可以自己定義一些子空間,在代碼裡看到這樣的寫法,甚是疑惑。

一、什麼是命名空間

通俗意義上說,每個命名空間都有自己的範圍,範圍的函數名,類名等是不可以重複的,唯一的。但是可以和其他命名空間的函數重名。這樣就可以解決大型工程中函數名重複的問題。
1、全域變數的範圍是整個程式,在同一範圍中不應有兩個或多個同名的實體(enuty),包括變數、函數和類等。

可以通過extern聲明同一程式中的兩個檔案中的同名變數是同一個變數。如果在檔案B中有以下聲明:
extem int a;
表示檔案B中的變數a是在其他檔案中已定義的變數。由於有此聲明,在程式編譯和串連後,檔案A的變數a的範圍擴充到了檔案B。如果在檔案B中不再對a賦值,則在檔案B中用以下語句輸出的是檔案A中變數a的值: cout<

2.編寫命名空間

   namespace namespace_name   {    //declarations   }

此種方式,如果已經存在一個namespace_name命名空間,則是開啟已有的命名空間,添加一部分進去;如果原來沒有此名稱的命名空間,則是建立一個新的。
3.命名空間可以是不連續的

  與其他範圍不同,命名空間可以在幾個部分中定義。命名空間由它的分離定義部分的總和構成,命名空間是累積的。一個命名空間的分離部分可以分散在多個檔案 中,在不同文字檔中的命名空間定義也是累積的。就像上面說的那樣,一個存在的命名空間去在裡面不停的累加一些東西。
4.介面和實現的分離
  命名空間定義可以不連續意味著,可以用分離的介面檔案和實現檔案構成命名空間,因此,可以用於管理自己的類和函數定義相同的方法來組織命名空間:

命名空間定義可以不連續意味著,可以用分離的介面檔案和實現檔案構成命名空間,因此,可以用於管理自己的類和函數定義相同的方法來組織命名空間:
(1)定義類的命名空間成員,以及作為類介面的一部分的函式宣告與對象聲明,可以放在標頭檔中,使用命名空間成員的檔案可以包含這些標頭檔。
(2)命名空間成員的定義可以放在單獨的源檔案中。

二、命名空間的具體工程用例

命名空間及其用法(C++)

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.