我遇到了与这个问题类似的问题,但有一个额外的深度:
namespace root { namespace parent1 { namespace childa {
class hard_to_get_at{};
}}}
namespace root { namespace parent2 { namespace childb {
// how do I refer refer to namespace childb relative to the current namespace ?
void someFunc()
{
parent1::childa::hard_to_get_at instance; // does not work
}
}}}
当我尝试上述方法时,出现错误
错误:'root::parent2::childb::parent1::childa' 尚未声明
我不明白为什么这不起作用,我的印象是应该的。我真的不想在someFunc
函数中添加 using 声明。
这发生在启用了 c++0x 选项的 g++ 4.5 中