namespace A
{
int a = 1;
int x = 2;
}
namespace B
{
int b = 3;
int x = 4;
}
using namespace A;
using namespace B;
using B::x;
int main()
{
return x; // error : reference to 'x' is ambiguous
}
如何仅在这种情况下隐藏 A::x
并公开 B::x
?
最佳答案
你不能。
您将两个名称都纳入范围,仅此而已。
要解决这个问题,请不要那样做;避免使用命名空间
。
关于c++ - 如何隐藏 `A::x` 并仅在这种情况下公开 `B::x`?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42832866/