• 15006阅读
  • 9回复

QT类多继承问题? [复制链接]

上一主题 下一主题
离线mecland
 
只看楼主 倒序阅读 楼主  发表于: 2009-01-05
— 本帖被 XChinux 执行加亮操作(2009-01-06) —
class UDCCameraTestDlg : public QWidget, public Ui::UDCCameraTestViewer, public ImageThread, public EventThread
{
}

在其它类中操作或在类内处理事件时,编译出现如下错误:

ColorItem.cpp:95: error: ‘QObject’ is an ambiguous base of ‘UDCCameraTestDlg’
make: *** [ColorItem.o] Error 1
离线water_wf

只看该作者 1楼 发表于: 2009-01-05
Q_OBJECT
离线mecland
只看该作者 2楼 发表于: 2009-01-05
加了Q_OBJECT的
离线wd007

只看该作者 3楼 发表于: 2009-01-05
这三个可以在一起多继承吗
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线sbtree
只看该作者 4楼 发表于: 2009-01-06
继承的层次中不允许包含多次基类,也就是说你被继承的QWidget, Ui::UDCCameraTestViewer, ImageThread, public EventThread可能来自同一个基类
windows 7 + VC++2008 + Qt4.5.2
离线wvins
只看该作者 5楼 发表于: 2009-01-06
我不知道你是出于什么样的目的使用多继承,
多继承只应该是接口继承的方式!
-------------
面向对象的精髓是包含而不是继承,
想办法把多继承变成单继承加聚合的方式才是正途。
离线wd007

只看该作者 6楼 发表于: 2009-01-06
优先使用聚合
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线mecland
只看该作者 7楼 发表于: 2009-01-07
谢谢大家,看样子思路有问题
离线tears1134

只看该作者 8楼 发表于: 2009-10-28
引用第4楼sbtree于2009-01-06 01:23发表的  :
继承的层次中不允许包含多次基类,也就是说你被继承的QWidget, Ui::UDCCameraTestViewer, ImageThread, public EventThread可能来自同一个基类


应该是这样
明天会更好!
离线joy_zhou
只看该作者 9楼 发表于: 2012-01-30
如何使用“聚合”?
快速回复
限100 字节
 
上一个 下一个