【发布时间】:2010-11-25 13:20:02
【问题描述】:
我有这样的代码:
namespace N {
class B {
public:
virtual void doStuff(B *) = 0;
};
}
// not in a namespace
class Derived : public N::B {
public:
void doStuff(B *); // Should this be N::B, or is B ok?
};
我是否需要 Derived 引用它的基类的命名空间限定符? GCC 和 MSVC 对编写的代码很满意,但是除非我将命名空间放入,否则另一个编译器会抱怨。C++ 标准是怎么说的?
【问题讨论】:
-
如果这不是秘密,哪个编译器会抱怨?
标签: c++ inheritance namespaces language-lawyer name-lookup