29.默认构造函数
構(gòu)造函數(shù)的任務(wù)是 初始化類對象的數(shù)據(jù)成員,創(chuàng)建對象。無論何時只要類的對象被創(chuàng)建,就會自動執(zhí)行構(gòu)造函數(shù)!
不同于其他的成員函數(shù),構(gòu)造函數(shù)不能被聲明為const。當(dāng)我們?yōu)轭悇?chuàng)建一個const對象的時候,直到構(gòu)造函數(shù)執(zhí)行完初始化過程,對象才算真正的獲得常量屬性。因此,構(gòu)造函數(shù)可以在const對象創(chuàng)建的過程中向其寫值!
默認(rèn)構(gòu)造函數(shù)又稱為合成構(gòu)造函數(shù)!
對于大多數(shù)的類來說,執(zhí)行合成構(gòu)造函數(shù)按照如下規(guī)則初始化成員:
如果成具有類內(nèi)初始值,那用它來直接初始化成員;否則默認(rèn)初始化
當(dāng)我們自定義的類中沒有給出自定義的構(gòu)造函數(shù),那么在創(chuàng)建對象的時候,系統(tǒng)會為我們自動合成合成構(gòu)造函數(shù)!一旦我們定義了其他的構(gòu)造函數(shù),系統(tǒng)將不會為我們再次合成構(gòu)造函數(shù)!(但通過 =default 可以實(shí)現(xiàn) 合成構(gòu)造函數(shù)和自定義構(gòu)造函數(shù)同時存在)
對于數(shù)據(jù)成員,構(gòu)造函數(shù)初始化列表執(zhí)行初始化,構(gòu)造函數(shù)體執(zhí)行賦值
總結(jié)
- 上一篇: 28.构造函数中,成员变量一定要通过初始
- 下一篇: 6.OSI七层网络模型与TCP/IP四层