C++名稱空間

東皇太一在此發表於2020-12-06

名稱空間

namespace namespace_name
{
    //程式碼宣告
}

呼叫某名稱空間裡的函式,需要在前面加上其所處空間的名字:

name::code; // code 可以是變數或者函式

using 指令

using namespace

像初學者常常在檔案前面寫的:

using namespace std;

意思是使用名稱空間 “std”,這樣就可以直接使用"std"裡面的東西,而不需要在前面加上名稱空間的名字了。(我之前壓根就不知道這是啥。。。)

using std::cout

也可以像這樣只是使用某一個函式,就好像 Python 裡邊的 “import”

不連續的名稱空間

一個名稱空間可以寫在不同的檔案裡,它是由幾個單獨定義的部分組成的。所以,如果名稱空間中的某個組成部分需要請求定義在另一個檔案中的名稱,則任然需要宣告該名稱。

巢狀的名稱空間

名稱空間可以巢狀

namespace namespace_name1
{
    // code
    namespace namespace_name2
    {
        // code
    }
}

呼叫巢狀裡層中的成員:

using namespace namespace_name1::namespace_name2;

相關文章