QObject with another object as parent, the object will automatically add itself to the parent's children() list. The parent takes ownership of the object; i.e., it will automatically delete its children in its destructor."
Следовательно, внутри класса с Q_OBJECT если я создаю например QLabel и не указываю в конструкторе parent, то это приведет к утечке?
void MainWindow::foo(){
QLabel l = new QLabel();
}
Должно быть так?
void MainWindow::foo(){
QLabel l = new QLabel(this);
}
Везде вижу первый вариант: там как-то неявно parent передается? Ведь в конструкторе он по дефолту равен nullptr. Или класс QLabel имеет где-то указатель на Q_OBJECT, который его потом отчистит?
Везде - это где?
Обсуждают сегодня