Qt:继承parent中的QObject和child中的其他QWidget子类

Qt: Inherit QObject in parent and other QWidget subclass in child

我正在为 Qt 编写一系列自定义 classes。我需要的是拥有一个几乎没有自定义信号和插槽的基础 class,并且 children classes 将拥有它。但是,我知道从相同的 classes 继承会抛出一个错误。我已经阅读了文档,但只规定如果我想使用 Q_OBJECT 宏,我需要包含 QObject 。这是我打算执行的以下示例代码:

class Base : public QObject
{
Q_OBJECT

base signals here

public base slots here
}

class Child : public QLabel, public Base 
{
// Other codes here
}

这样可以吗?因为我只想使用 Qt 连接所有 children 继承自 parent class.

由于多种原因,QObject 的多重继承将不起作用。 (Moc-Compiler 无法正常工作并且 QObject 具有成员变量,这使得多重继承不安全)。

如果您想为多个对象提供相同的行为,您最好使用组合而不是继承。