建構函式相關內容

2021-07-10 06:20:52 字數 869 閱讀 1175

1.

screen(){}//預設建構函式

//若希望提供cin作為接受istream&引數的建構函式的預設實參

//screen(std::istream &is=std::cin)

screen(unsigned ht, unsigned wd) :height(ht), width(wd),contents(ht*wd,' '){}//接收所有成員變數(利用函式列表)的建構函式

screen(unsigned ht,unsigned wd,char c):height(ht),width(wd),contents(ht*wd,c){}

screen(const unsigned &ht, const unsigned &wd)

//因為不會改變傳過來的變數,且如果string型別的引數肯定要傳引用

screen(std::istream& is)//提供使用者自己輸入的建構函式

2.委託建構函式(乙個構造函式呼叫另乙個建構函式):程式先執行受委託建構函式,然後在執行委託建構函式本身

eg:screen():screen(0,0){}//利用委託建構函式使變數初始化

3.當類沒有預設建構函式時,在另乙個類中要建立類的物件,則必須顯示的呼叫原來類的帶參建構函式,否則,該物件不能正常初始化;

4.c++物件的宣告和初始化是不可以分離的,或顯示呼叫建構函式,或隱式呼叫建構函式;若是用指標的話,可以先宣告指向物件的指標,然後需要時,new出乙個物件,把物件位址傳給指標;

5.當建構函式只有乙個引數時,可以將建構函式設定為exlicit,避免程式設計師不希望的隱式型別轉換(eg:string s=129);

6.建構函式初始值列表時,成員的初始化順序:只與資料成員在類中出現的先後順序有關,而與初始值列表的順序無關;

虛函式相關內容

動態多型 名詞 虛基類 虛繼承 作用 菱形 多重繼承 純虛函式 抽象類 if 0 虛繼承作用 菱形繼承只構造一次 class a class b virtual public a class c virtual public a 多重繼承 class d public b,public c int ...

ORACLE相關內容

1 em,dbca,netca,netmgr出現亂碼方案 cd oracle home jre lib mv font.properties font.properties.bak mv font.properties.zh font.properties em,dbca,netca,netmgr詳...

JVM相關內容

本地 native code 每個因素對記憶體占用的影響又會隨著應用程式 執行環境和系統平台的不同而變化,那怎樣計算總的記憶體佔用量?是的,想得到乙個準確的數字不是那麼容易,因為 你很難控制本地 native 部分。你能控制的部分只有堆大小 xmx,類占用的記憶體 xx maxpermsize,還有...