向名称空间别名添加定义

时间:2015-07-25 17:16:41

标签: c++ c++11

是否可以在命名空间别名中添加内容? 或者我如何实现以下目标:

using KdTree = ExternalLibrary::Special::KdTree;

namespace KdTree{
    class MySpezial {};
};

这不起作用,但以下工作:

using KdTree = ExternalLibrary::Special::KdTree;

namespace ExternalLibrary{ namespace Special { namespace KdTree{
    class MySpezial {};
}}};

标准是否禁止使用第一种方法?

1 个答案:

答案 0 :(得分:3)

第一个例子目前是不被允许的,也可能不会在C ++ 1Z中,但请注意recent proposal允许

namespace ExternalLibrary::Special::KdTree {
    class MySpezial {};
}

这已经implemented in Clang了。