c++ - 不明确的类命名空间问题

标签 c++ namespaces objective-c++ classname

我...觉得问这个问题真的很傻,但我不确定如何解决这个问题。

这是我的代码(Objective-C++)的一小段:

#include "eq/eq.h"
namespace eqOther
{
    class Window : public eq::Window //<-- Error occurs here
    {
    public:
        Window( eq::Pipe* parent ) : eq::Window( parent ) {}

        void popup();

    protected:
        virtual ~Window() {}

        virtual bool processEvent( const eq::Event& event );

    private:

    };
}

我得到的错误是:Use of 'Window' is ambiguous 它说它在 X.h 中被声明为 typedef XID Window 而在 window.h 中被声明为class eq::Window 是它的父类(super class)。

我声明的类应该在 namespace eqOther 是吗? eqOther::Window 不同于 eq::Window!?

我觉得自己太蠢了,但我就是看不出我做错了什么......

最佳答案

也许你有一些 using namespace eq; 在你的标题中的某处

关于c++ - 不明确的类命名空间问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3212813/

相关文章:

c++ - 匿名命名空间歧义

coding-style - 编码风格 : lock/unlock internal or external?

c++ - 检测是否存在具有给定签名的函数

c++ - 将 regex_search 与 std::string 一起使用时的无限循环

C++ 单例类 getInstance(作为 java)

objective-c - 尺寸已定义

c++ - 以双向方式混合 Objective C++ 和 C++

c++ - 网络协议(protocol)设计异步单线程与同步多线程?

c++ - 命名空间成员定义

php - 为什么 php simplexml 允许在这些示例之一中使用 addChild 而在另一个示例中则不允许?