類中的特殊函式,用於描述初始化演算法
建構函式的作用
◆在物件被建立時使用特定的值構造物件,將物件初始化為初始狀態。
例如:希望在構造乙個clock類物件時 ,將初試時間設為0:0:0 ,就可以通過建構函式來設定。
clock myclock(0,0,0);
建構函式的形式
◆函式名與類名相同
◆不能定義返回值類,不能有return語句
◆可以有形式引數,也可以沒有形式引數
◆可以是內聯函式
◆可以過載
◆可以帶預設引數值
建構函式的呼叫時機
在建立物件時自動被呼叫
預設建構函式
◆呼叫時可以不需要實參的建構函式, 參數列為空的建構函式
◆全部引數都有預設值的建構函式
隱含生成的建構函式
◆如果程式中未定義建構函式,編譯器將自動生成乙個預設建構函式
◆引數列表為空,不為資料成員設定初始值;
◆如果類內定義了成員的初始值,則使用內類定義的初始值;
◆如果沒有定義類內的初始值,則以預設方式初始化;
◆基本型別的資料預設初始化的值是不確定的。
」= default"
◆如果程式中已定義構造函,預設情況下編譯器就不再隱含生成預設建構函式。如果此時依然希望編譯器隱含生成預設建構函式可以使用" =default」.
◆例:class clock ;
例項:輸出時間
#include "stdafx.h"
#include
using namespace std;
class clock;
clock::clock(int newh,int newm,int news):
hour(newh),minute(newm),second(news)//初始化列表的方式,nweh初始化hour資料
inline void clock::showtime()
結果:
C 建構函式 拷貝建構函式
建構函式 class base private int m var 建構函式無返回值型別,函式名和型別相同。拷貝建構函式傳遞引數為引用。1 class base2 7 拷貝建構函式 8 base base ref m var ref m var 9 11 private 12 intm var 13...
C 構造器(建構函式)
定義和作用 構造器是在構建類的 引用時 自動執行的方法。所以,每個類都必須至少要有乙個構造器。在訪問乙個類的時候,編譯器最先執行構造器中的 它與類同名,帶引數的構造器能夠獲取引數,但是與方法不同的是 構造器雖然也是一種 例項型別 即必須通過例項來進行呼叫,也可以稱之為引用型別 但是卻不能返回任何值 ...
C 建構函式
建構函式是一種特殊的成員函式,它主要用於為物件分配儲存空間,對資料成員進行初始化.1 建構函式的名字必須與類同名 2 建構函式沒有返回型別,它可以帶引數,也可以不帶引數 3 建構函式的主要作用是完成對類的初始化工作 4 在建立乙個類的新物件 使用new關鍵字 時,系統回自動呼叫給類的建構函式初始化新...