【发布时间】:2009-10-21 08:17:16
【问题描述】:
我正在使用 Qt 库。我目前正在尝试创建自己的 QDockWidget(我的类正在继承)。现在我的班级有一个指向 QDockWidget 的指针。这甚至有意义吗?这是法律声明吗?有没有更好的方法将 QDockWidget 与我在 Qt 中的其他程序分开?我对如何实现新的 Dock Widget 有点迷茫。这是我的 QDockWidget 类的副本:
#ifndef DOC_MENU_WIDGET_H
#define DOC_MENU_WIDGET_H
#include "App_interface.h"
#include <QObject>
#include <QWidget>
#include <QDockWidget>
class Doc_menu_widget : public QWidget
{
//Q_OBJECT
public:
Doc_menu_widget(App_interface *parent);
~Doc_menu_widget();
private:
QDockWidget *dock_widget;
};
#endif
【问题讨论】:
-
请注意,
QDockWidget和“指向QDockWidget的指针”是两种完全不同的类型。 -
为什么不直接从 QDockWidget 派生?你想表达什么:(a) Doc_menu_widget IS-A QDockWidget --> 派生 (b) IS-IMPLEMENTED_IN_TERMS-OF QDockWidget(与PERFORMS-LIKE QDockWidget相同) --> 使用私有成员
标签: c++ qt inheritance