Qt. Объявлять элементы формы внутри класса или в конструкторе?
Смотрю примеры кода в Qt. Есть ли разница объявлять элементы формы внутри класса или в конструкторе? Если да, то при каких ситуациях следует объявлять элементы в классе вот так:
`
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
MainWindow();
private:
QMenu *fileMenu;
QMenu *editMenu;
QMenu *formatMenu;
QMenu *helpMenu;
QAction *cutAct;
}`
А при каких уже непосредственно в конструкторе вот так:
void MainWindow::createMenus()
{
QMenu* fileMenu;
fileMenu = menuBar()->addMenu(tr("&File"));
QAction *quitAct = fileMenu->addAction(tr("&Quit"),this, QApplication::quit);
quitAct->setStatusTip(tr("Exit from the application"));
quitAct->setShortcut(Qt::CTRL + Qt::Key_Q);
QMenu* helpMenu;
helpMenu = menuBar()->addMenu(tr("&Help"));
QAction *aboutAct = helpMenu->addAction(tr("&About"), this, &MainWindow::about);
aboutAct->setStatusTip(tr("Show the application's About box"));
aboutAct->setShortcut(Qt::CTRL + Qt::Key_A);
}
Ответы (1 шт):
Автор решения: eri
→ Ссылка
Когда нужны ссылки на эти элементы - объявляйте в классе. Когда создал и забыл - в конструкторе.