C++ 使用;“多重”;名称空间一行

C++ 使用;“多重”;名称空间一行,c++,c++11,namespaces,inline-namespaces,C++,C++11,Namespaces,Inline Namespaces,是否有一种简化的方法来包含更多的名称空间,而不是每次输入相同的内容。这很烦人,尤其是在.h文件中 例如: 而不是写: int f() { using namespace blabla1; using namespace blabla2; using namespace blabla3; } 我希望: 使用myNamespace=blabla1、bla2、bla3 int f() { using namespace myNamespace; /// th

是否有一种简化的方法来包含更多的名称空间,而不是每次输入相同的内容。这很烦人,尤其是在.h文件中

例如:

而不是写:

int f() {
    using namespace blabla1;
    using namespace blabla2;
    using namespace blabla3;

}
我希望:

使用myNamespace=blabla1、bla2、bla3

int f() {
    using namespace myNamespace;
    /// this will be equivalent to the previous example
    }

谢谢

我不确定这是否对您有帮助,但是如果您希望避免每次使用多个using语句,可以将上述名称空间包装到另一个名称空间中:

namespace myNameSpace {
  using namespace blabla1;
  using namespace blabla2;
  using namespace blabla3;
}
然后像这样使用它:

int f() {
    using namespace myNameSpace;
}

这里有一个例子。

使用的指令是可传递的。因此,如果将它们聚合到单个名称空间中

namespace All {
    using namespace A;
    using namespace B;
    using namespace C;
}
然后你可以简单地做

using namespace All;
不合格的名称查找将起作用


同一个解决方案同时出现,该死,我不知道人们如何处理这些案件。你们两个都应该得到最好的答案谢谢:)请注意,你只能接受一个答案,但是如果你觉得多个答案有用的话,你可以投票给他们。我有一个新帐户,所以我需要一些积分来投票。我一定会把这两个都投了。我将把最好的答案交给StoryTeller,因为他解释了使用指令是可传递的。再次谢谢你,伙计