在我的Qt应用程序中,我有一个基类如下.我正在使用QObject,因为我想在所有派生类中使用Signal-Slot机制.
class IRzPlugin : public QObject { public: virtual void registerMenu(QWidget*); virtual void execute(); }@H_403_4@然后我有另一个课程如下.我需要从QWidget扩展,因为我需要在所有派生类中实现事件处理方法(mouseMoveEvent(),keyPressEvent().. etc);
class IRzLayeringPlugin : public IRzPlugin,public QWidget{ }@H_403_4@但是编译器给出了这些错误:
C:\svn\osaka3d\tags\iter08\prototype\osaka3d\rinzo\plugin\moc_IRzLayeringPlugin.cxx: In member function `virtual const QMetaObject* IRzLayeringPlugin::MetaObject() const': C:\svn\osaka3d\tags\iter08\prototype\osaka3d\rinzo\plugin\moc_IRzLayeringPlugin.cxx:51: error: `QObject' is an ambiguous base of `IRzLayeringPlugin' C:\svn\osaka3d\tags\iter08\prototype\osaka3d\rinzo\plugin\moc_IRzLayeringPlugin.cxx:51: error: `QObject' is an ambiguous base of `IRzLayeringPlugin' make[2]: *** [CMakeFiles/Rinzo.dir/plugin/moc_IRzLayeringPlugin.cxx.obj] Error 1