Если я правильно понимаю, что вы спрашиваете, я думаю, что это в основном сводится к традиции и примеру, с добавлением небольшого количества зависимостей от заголовка.
Альтернативой, конечно, является объявление quit
в качестве переменной-члена MyWidget
. Если вы сделаете это, вам нужно будет включить заголовочный файл для QPushButton
, где объявлено MyWidget
, а не в файл реализации. В приведенном вами примере также используются родительские отношения QObject
s, чтобы отслеживать память для кнопки и удалять ее при уничтожении, поэтому ее не нужно указывать в качестве члена класса.
Я почти уверен, что вы могли бы изменить распределение стека, если бы вы действительно этого хотели.