私のコーディングの練習は最高に説明することができます。混乱
- ウィジェットは、積極的に(テキストを提供して例えば
QLineEdit
を使用しようとしている場合)、私はヘッダーファイルでそれを宣言し、MainWindow.cpp
でそれを初期化します。例: TextEditor.h:
class TextEditor { //other code private: QLineEdit edtFind; };
2 ..ウィジェットを使用しない場合(例えばQLabel
、QWidget
)を、またはそれは、信号スロットシステム(例えばのQPushButton)の一部だ、私は宣言し、新しいコンストラクタを使用してそれをinialiseします。
-e.g.
TextEditor::TextEditor()
{
//other code
QWidget* searchPanel = new QWidget();
edtFind = new QLineEdit("Enter Search Term");
QPushButton* findButton = new QPushButton("Find");
connect(findButton,SIGNAL(pressed()),this,SLOT(find()));
ui->statusbar->addPermanentWidget(searchPanel);
}
私の質問は、ポイント2で効率的なアプローチを使用していますか?ヒープからメモリを割り当てない方が良いでしょうか?
ありがとうございました。
'new'を使用して割り当てられたメモリがヒープに割り当てられます。あなたはすでに2番目の点でそれをやっています。そして、その変数はそのクラスの_property_であるときはいつでもクラスメンバでなければならず、また変数は最も寿命とスコープが狭くなければなりません。 –