命名空间 'w' 没有看到通过使用“使用命名空间 x::y::z;”嵌套在命名空间 x::y::z 中的类 'z' 声明。我正在使用 Visual Studio 2010。出了什么问题?
//...
namespace x
{
namespace y
{
namespace z
{
class z
{
public:
z(){};
};
}
}
}
using namespace x::y::z; // normal declaration
namespace x
{
namespace y
{
namespace w
{
class w
{
z object; // Here is the problem. Type 'z' is underlined in visual studio!
// When I did like this:
// x::y::z::z object;
// everything is compiling properly
};
}
}
}
int main()
{
z object; // no problem - I declared namespace above
x::y::z::z object2; // also no problem
return 1;
}