0
나는 수많은 대화 상자를 가지고있는 Qt4 응용 프로그램을 가지고 있습니다. QDialog가 레이아웃을 삭제하는지 여부를 알고 싶습니다. 예를 들어 보자QDialog는 QLayout을 삭제합니까?
class MyDialog : public QDialog {
public:
MyDialog(QWidget* _parent = 0) : QDialog(_parent) {
//instantiate some widgets
m_layout = new QGridLayout(this);
setLayout(m_layout)
//add some widgets to the layout
}
~MyDialog() {
//Do I need this code? or will the parent delete the layout?
//delete m_layout;
}
private:
QGridLayout* m_layout;
}
을 그래서 난 내 자신의 소멸자를 작성해야합니까? 또는 QDialog가 메모리 관리를 처리합니까 m_layout?
어쩌면 약간의 확장은 그 QObject를의 모든 자손과 함께 사용할 수있는 동작입니다 말 [http://qt-project.org/doc/qt-4.8/objecttrees.html] (http://qt-project.org/doc/qt-4.8/objecttrees.html) – jbh