TransWikia.com

Qt наследование и parent

Stack Overflow на русском Asked by Slav9n92 on December 27, 2020

Всем привет. Ни для кого не секрет, что в чистых плюсах объекты уничтожаются в обратном порядке созданию.
Если у нас есть базовый класс А и производный от него В, то при создании класса В – сначала инициализируется конструктор базового класса, а потом производного. При уничтожении класса В сначала уничтожится класс В потом базовый.

Меня интересует порядок уничтожения в Qt при наследовании и объявлении parent
допустим у нас есть код

заголовочник

class list : public QAbstractListModel
{
...
  explicit list( QObject* parent ) noexcept;
...
}

сипипишник

...
list::list( QObject* parent ) noexcept
 : QAbstractListModel( parent )
{
}
...

и так, где то мы создаем наш list

list* list = new list( some_parent );

сначала будет создан базовый класс, потом наследник.

Когда объекты начнут уничтожатся наш лист будет уничтожен благодаря parent который мы указали в аргументах конструктора. Правильно ли я понимаю, что порядок уничтожения будет прямой, сначала базовый класс, а потом уже производный( так как parent передан базовому классу )?

Add your own answers!

Ask a Question

Get help from others!

© 2024 TransWikia.com. All rights reserved. Sites we Love: PCI Database, UKBizDB, Menu Kuliner, Sharing RPP