QWidgets をプログラムで追加する場合、QWidgets を初期化する最良の方法 (場所) は何ですか?
私はそれを行う方法を考えることができます:
1) 定義ファイルにインスタンスを作成し、初期化子リストで初期化します。これは正しい方法のようですが、ウィンドウに追加する必要がある QWidget が増えるほど、ずさんになります。
class SomeWindow : QDialog{
...
private:
QLabel label1;
QLabel label2;
...
}
SomeWindow::SomeWindow(...) : QDialog(...),
label('label1 text'), label('label2 text')
{
...
layout.addWidget(&label1);
layout.addWidget(&label2);
...
}
2) C# から来ている私はこれを好む傾向がありますが、メモリ リークが発生するようです...
SomeWindow::SomeWindow(...) : QDialog(...)
{
QLabel* label1 = new QLabel('label1 text');
QLabel* label2 = new QLabel('label2 text');
...
layout.addWidget(label1);
layout.addWidget(label2);
...
}
私が見逃しているこれを行うためのより良い方法はありますか?
初歩的な質問で申し訳ありません。