Virtual destructor of the base class Q ++

Do we need a virtual destructor for the classes that will be used in Qt-way: set QObject-parent, which will call the QObject destructor deleteLater()or something similar for any object for which it was set as a parent?

For instance:

class MyWidget : public QWidget {
public:
    MyWidget() {
        w = new QWidget(this);
        // "w" will be deleted automatically by parent MyWidget::QWidget::QObject destructor afaik
    }
private:
    QWidget *w;
}

Do we need a virtual destructor for the class MyWidgetif it is inherited? I see no reason for this, because it does not delete anything, and every property of the class that is obtained from QObjectwill be removed from MyWidget :: QWidget :: QObject of the destructor.

+4
source share
2 answers

() virtual , QWidget virtual, virtual.

, , ( virtual), virtual, - .

+2

, , QObject, QWidget, , .

+4

All Articles