0

如果您使用命名空间来分离模块/结构化,则头文件中的嵌套和缩进会显着增加。有没有办法以更短的方式编写以下代码?

namespace A
{
    namespace B
    {
        namespace C
        {
            namespace D
            {
                namespace E
                {
                    template <typename T>
                    public class X
                    {
                        public: ...

例如喜欢

namespace A::B::C::D::E
{
  template<typename T> ...
}

在 C++ 的头文件中?

4

2 回答 2

5

不,嵌套命名空间语法之前已在不同时间和地点提出过,但无效。

你不需要缩进

namespace A { namespace B { namespace C {
// ...
} } } // namespace A::B::C
于 2012-05-22T13:17:53.823 回答
2

您可以使用命名空间别名。这不适用于扩展现有的命名空间,而是为了更容易访问。

您可以使用宏来扩展现有的命名空间,如果您需要这样做,您可能拥有比您需要或想要的更深的命名空间层次结构。

于 2012-05-22T12:35:06.960 回答