建構:
1.建構式在類別定義中看起來是個「名稱與類別相同」且「沒有回傳值資料型態」的函式。
2.我們沒替該類別宣告任何建構式時,會有個公開的空預設建構式被自動定義。
3.宣告物件陣列的時候也會呼叫建構式,如:Grade c[3];會呼叫三次 Grade() 建構式。
4.建構式可以帶有參數 (反之解構式不行)。
5.但是不能用這個方法來呼叫沒有參數的建構式:Grade e(); 這會被當成函式呼叫。
6.產生物件陣列時只能呼叫預設建構式而不能呼叫帶有參數的建構式:Grade c[3]; 會呼叫三次 Grade() 建構式。
7.單一參數的建構式可以讓我們將該參數型態的值『隱性轉型』成該類別的物件:Grade g = 10; 會 呼叫 Grade(int);可在建構式前加上 explicit 修飾字來避免隱性轉換。