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 具有成员变量,这使得多重继承不安全)。
如果您想为多个对象提供相同的行为,您最好使用组合而不是继承。
我正在为 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 具有成员变量,这使得多重继承不安全)。
如果您想为多个对象提供相同的行为,您最好使用组合而不是继承。