質問: 下記のコードは、コロン":"の次に、m_pushTimer(new QTimer(this)) とか m_modeButton(0) が記載されています。 Q1)m_pushTimer(new QTimer(this))は、タイマーを起動して、m_pushTimerで そのタイマーを参照するものでしょうか? Q2)m_modeButton(0) は、ボタンを有効にするものでしょうか? この様な書き方が全く初めてなので、ここに質問させて頂きました。 宜しくお願いします。 //質問のコード AudioTest::AudioTest(): //m_pushTimer(0) // QTimer *m_pushTimer; m_pushTimer(new QTimer(this)) // QTimer *m_pushTimer; ,m_modeButton(0) //QPushButton *m_modeButton; ,m_suspendResumeButton(0) //QPushButton *m_suspendResumeButton; ,m_deviceBox(0) //QComboBox *m_deviceBox; ,m_device(QAudioDeviceInfo::defaultOutputDevice()) //QAudioDeviceInfo m_device; ,m_generator(0) //Generator *m_generator; ,m_audioOutput(0) //QAudioOutput *m_audioOutput; ,m_output(0) //QIODevice *m_output; ,m_buffer(BufferSize, 0) //QByteArray m_buffer; { initializeWindow(); initializeAudio(); } 以上、宜しくお願いします。
回答: メンバ変数の初期化リストですね。 メンバ変数名(初期値) の書式になります。 参考 A1) m_pushTimer(new QTimer(this))は AudioTestクラスが持つメンバ変数m_pushTimerにQTimerの新しいインスタンスを代入する、ことになります。 A2) m_modeButtonがAudioTestクラスでどのような役割になっているのかは、提示されたコードからは判断がつかないのでわかりません。