正確理解qt中建構函式:widget::widget(qwidget *parent) : qwidget(parent),ui(new ui::widget)
#include using namespace std;
class base
base(int val):m_num(val + 1)
private:
int m_num;
};class basechild : public base
basechild(int val) : base(val), m_num(val)
private:
int m_num;
};int main(int argc, char *ar**)
輸出結果:
this is base()
this is basechild()
this is base(int val) and m_num = 6
this is basechild(int val) and m_num = 5
basechild是類, ::是作用域,::後面的basechild(int val)是建構函式,:後面的base(val)是指定基類的建構函式,不明確指定的話是預設建構函式,n_num(val) 是對basechild類裡面的成員變數做初始化。
widget::widget(qwidget *parent) : qwidget(parent),ui(new ui::widget)
理解:widget是類, ::是作用域,::後面的widget(qwidget *parent)是建構函式,
:後面的 qwidget(parent)是指定基類的建構函式,不明確指定的話是預設建構函式,
ui(new ui::widget) 是對basechild類裡面的成員變數做初始化。
本文借鑑:
php的建構函式理解
建構函式 是一種特殊的方法。主要用來在建立物件時初始化物件,即為物件成員變數 賦初始值,總與new運算子 一起使用在建立物件的語句中。特別的乙個類可以有多個建構函式 可根據其引數個數的不同或引數型別的不同來區分它們 即建構函式的過載 經常可以看到這樣 function construct param...
C 中類的建構函式理解(二)
上次的筆記中簡要的探索了一下c 中類的建構函式的一些特性,這篇筆記將做進一步的探索。主要是複製建構函式的使用。複製建構函式也稱拷貝建構函式,它只有單個形參,且該形參是對本類型別物件的引用。其作用有以下幾點 1 根據另乙個同型別的物件顯示或隱式初始化乙個物件 2 複製乙個物件,將它作為實參傳遞給乙個函...
SetBkMode函式理解
輸出的字串時,發現存在背景色,這樣的輸出是破壞背景的。那需要使用什麼方法來保持背景不變,而又能輸出紅色的字串呢?比如按鈕的文字顏色是黑色的,而背景是灰色的。這就需要使用setbkmode函式來設定drawtext函式的輸出方式,顯示裝置共有兩種輸出方式 opaque和transparent。opaq...