1.
轉換建構函式
1)
單個引數
的建構函式
2)
將其他型別轉換為類型別
3)
類的建構函式只有乙個引數是非常危險的,因為編譯器可以使用這種建構函式把引數的型別隱式轉換為類型別
賦值與初始化的區別
1)
在初始化語句中的等號不是運算子,編譯器對這種表示方法有特殊的解釋
2)
賦值:test& test::operator+(const test& other);
運算子過載:
explicit關鍵字
1)
只提供給類的建構函式使用關鍵字
2)
編譯器不會把宣告為explicit的建構函式用於隱式轉換,它只能在程式**中顯示建立物件。
explicit test(int x);//使轉換建構函式不生效
4.
建構函式初始化列表
推薦在建構函式初始化列表中進行初始化
建構函式的執行分為兩個階段:初始化段+普通計算段
物件成員與初始化
6.
const成員、引用成員的初始化
const成員、引用、物件成員(物件所對應的類沒有預設建構函式)的初始化,只能在建構函式初始化列表中進行
7.
列舉物件適用與所有物件
需要常量時可以定義列舉成員 示例
: class test ;
};列舉訪問:test::success
建構函式 二 3
建構函式 與類名同 無返回可有引數 class test void print int main 物件陣列 主動呼叫 for int i 0 i 3 i return 0 類成員函式和普通函式一樣可進行過載,並遵守相同過載規則 類中沒定義任何一建構函式,編譯器預設提供無參建構函式 函式體為空 和拷貝...
C 建構函式(二)
本篇是介紹c 的建構函式的第二篇 共二篇 屬於讀書筆記,對c 進行乙個系統的複習。複製建構函式是建構函式的一種,也被稱為拷貝建構函式,他只有乙個引數,引數型別是本類的引用。預設建構函式 即無參建構函式 不一定存在,但是複製建構函式總會存在。因為只要沒有自己寫的複製建構函式,就會自動生成乙個複製建構函...
c 建構函式 拷貝建構函式 c 複習 二
c param mark 資料型別 string代替char void tv power 有且只有一次的初始化,根據條件初始化 建構函式例項化時被自動呼叫 建構函式與類名同名 建構函式沒有返回值 建構函式可以進行過載 例項化物件時建構函式有且只用到一次 使用者沒有定義建構函式時,編譯器自動生成建構函...