繁体   English   中英

命名空间的前向声明

[英]forward declaration of namespace

namespace CounterNameSpace {
    int upperbound;
    int lowerbound;
    using namespace NS;//Error
}
namespace NS {
int i;
}
// ...
namespace NS {
int j;
}

在上面的例子中,它显示了一个错误。 错误C2871:'NS':具有此名称的命名空间不存在我知道如果我在解决反向空间问题之前定义NS。 但只是想知道在c ++中是否存在任何类似命名空间的前向声明的东西。因此,在没有在counternamespace之前定义NS的情况下,上述问题将得到解决。 请帮忙 。

没有人说命名空间需要立即获取所有内容:

namespace NS {}
namespace CounterNameSpace {
    int upperbound;
    int lowerbound;
    using namespace NS;
}
namespace NS {
int i;
}

但是,这可能不会做你想要的。 在声明它们之前,您仍然无法使用该命名空间中的任何类型。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM