3 回答

TA貢獻(xiàn)1799條經(jīng)驗(yàn) 獲得超8個贊
命名空間本質(zhì)上是軟件包。它們可以這樣使用:
namespace MyNamespace
{
class MyClass
{
};
}
然后在代碼中:
MyNamespace::MyClass* pClass = new MyNamespace::MyClass();
希望能有所幫助。
或者,如果您想始終使用特定的名稱空間,則可以執(zhí)行以下操作:
using namespace MyNamespace;
MyClass* pClass = new MyClass();
編輯:按照bernhardrusch所說,我傾向于完全不使用“使用名稱空間x”語法,我通常在實(shí)例化對象時明確指定名稱空間(即,我顯示的第一個示例)。
并按下面的要求,您可以使用任意數(shù)量的名稱空間。

TA貢獻(xiàn)1848條經(jīng)驗(yàn) 獲得超2個贊
為了避免說出一切,Mark Ingram已經(jīng)說了一些使用命名空間的提示:
避免在頭文件中使用“使用名稱空間”指令-這將為導(dǎo)入該頭文件的程序的所有部分打開名稱空間。在實(shí)現(xiàn)文件(* .cpp)中,這通常不是大問題-盡管我更喜歡在功能級別上使用“使用名稱空間”指令。
我認(rèn)為名稱空間主要用于避免命名沖突-不一定要組織代碼結(jié)構(gòu)。我主要用頭文件/文件結(jié)構(gòu)來組織C ++程序。
有時,較大的C ++項(xiàng)目中使用名稱空間來隱藏實(shí)現(xiàn)細(xì)節(jié)。
using指令的附加說明:有些人喜歡僅對單個元素使用“ using”:
using std::cout;
using std::endl;
- 3 回答
- 0 關(guān)注
- 512 瀏覽
添加回答
舉報