我似乎記得在將多個名稱空間合併爲一個的方式中,在某處看到筆記。可能包裝或合併單獨的名稱空間?
現在,尋找說的筆記我沒有找到他們 - 甚至搜索使用搜索條件梳理,分組,合併和包裝我沒有提出任何事情。也許我誤解了我之前看到的。 我沒有具體的應用程序,這只是一個好奇心,它有點人爲的。
但是,從2個開始的名字空間...
namespace a {int func() {return 1;}}
namespace b {int func() {return 2;}}
我一直在尋找的語法要麼簡單地將它們包裝在另一個名字 - 事後 - (是的,我知道我可以以嵌套方式重寫它)或將它們合併到一個新空間中。但是,我確實發現,如果我添加到其中一個名稱空間中,它的作用很大。
namespace c {namespace a{ int func2() {return 3;}} }
int main(int argc, char **argv)
{
int a = a::func(); // normal case
int c = c::a::func2(); // wrapped and added to
//int c = c::func2(); // doesn't work
//int d = a::func2(); // doesn't work
}
的問題是:
1)是否有語法,只是結合了兩個空間成爲一個新的嗎?
2)是否有語法來包裝空間而不添加更多的子空間?
我想你可以把'使用命名空間;''中,但B'重疊的功能名稱可能會導致問題。 – GWW
這是什麼意思? – Rhexis
@Flyphe - 引用上面的問題:*我沒有具體的應用程序,這只是一個好奇心,它有點人爲的。* – Arbalest