我一直在使用這種形式類重構:繼承與參數
MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
...
}
我想用這種形式看起來像這樣來重構它一個類中聲明:
class MainWindow : QMainWindow, ui
{
MainWindow(QWidget *parent)
{
...
}
}
但我刪除了參數在第一種形式。這個參數是什麼意思?
如何讓他們在第二種形式?請向我解釋第一種語法(或指向教程)。我不明白帶參數的繼承。
編輯:
我現在明白了這個問題,類中,我並沒有在第一次看看見一個單獨的.h文件中被初始化。我想:在方法定義之後是繼承運算符,而它是成員初始化運算符。
除非我誤解了,答案是「你不能」。您已經在使用正確的構造函數語法;你不能把你的一些構造函數語法移入類定義中,並期望它能夠工作。參數「parent」甚至沒有在類定義的位置定義! – Rook
第一個是構造函數的聲明。第二個是對繼承的一些瘋狂嘗試。冒號後的部分是不同的東西。在第一個片段中,':'後面的部分是成員初始值設定項,第二個片段中':'後面的部分正在執行inheritence –
@BobFincheimer感謝「成員初始值設定項」是我需要的術語。謝謝 – bokan