第三章 怎樣使用類和物件
阿新 • • 發佈:2018-11-10
3.1 首先不能在類的宣告中對資料成員進行初始化,因為類只是一種抽象型別並不是一個實體,不佔用儲存空間, 故無法存放資料。 如果一個類中的資料成員全部(must)都是public的,則可以在定義物件時進行初始化 Time t1 = {12,0,0};//全部資料成員 否則我們就需要用類似set_time這種成員函式的方式來進行初始化,但是當該類有多個物件(外),且類中的資料成員比較多時,程式就會太臃腫了。so 建構函式constructor 一種特殊的成員函式,不需要使用者呼叫,而是在建立物件時系統自動執行。函式名和類名必須同名,沒有返回值。 一般定義為public。constructor也可在類外定義,但同樣要在類內宣告。 對於同一類的不同物件可以這樣初始化 Time a; //呼叫constructor Time b = a;//un 3.1.3帶引數的建構函式 建構函式首部一般格式: 建構函式名 (型別1 形參1,型別2 形參2,型別3 形參3,...) ex:Time (int a,int b,string s) 定義物件的一般格式: 類名 物件名 (實參1,實參2,實參3,...) ex:Time t1(2018,11,"happy"); 很自然我們想知道 可不可以不對全部資料成員進行初始化,只對部分操作。 這就用到建構函式的過載了。