C++--第三章(類(lèi)和對(duì)象上)
1 類(lèi)
class A{
public :
? ? ? XXXX;
protect :
? ? ? XXXX;
private :
? ? ? XXXX;
}
XXXX--表示成員變量、成員函數(shù)
注意編程時(shí)將一件事進(jìn)行細(xì)分,歸類(lèi)。這就是類(lèi)和對(duì)象
1>普通成員函數(shù)://外面實(shí)現(xiàn)功能
2>內(nèi)聯(lián)函數(shù)
隱式聲明:
顯示聲明:
2 對(duì)象定義和使用
注意指針和沒(méi)有指針的取值操作符。指針就用 ->
可直接定義,也可以聲明后再定義。
類(lèi)作用域和成員訪問(wèn)屬性
公共類(lèi):用于對(duì)外接口
私有類(lèi):外界不能訪問(wèn)的內(nèi)部數(shù)據(jù)
將重要信息隱藏,實(shí)現(xiàn)封裝,簡(jiǎn)化程序。
3 構(gòu)造函數(shù)
構(gòu)造函數(shù):為對(duì)象分配空間,進(jìn)行初始化。與類(lèi)名一樣。無(wú)返回值,用戶不能命名調(diào)用,自動(dòng)創(chuàng)建。
兩種賦值方式:
構(gòu)造函數(shù)可以不帶參數(shù)。
構(gòu)造函數(shù)初始化列表:
初始化順序按照類(lèi)里被聲明的順序進(jìn)行。
?默認(rèn)參數(shù)構(gòu)造函數(shù)
4 析構(gòu)函數(shù)
執(zhí)行與構(gòu)造函數(shù)相反的操作,通常用于撤銷(xiāo)對(duì)象時(shí)的一些清理任務(wù),如釋放分配給對(duì)象的內(nèi)存空間。
沒(méi)有參數(shù)和返回值,只有一個(gè),不能重載,加上~。
析構(gòu):對(duì)象生命周期結(jié)束,自動(dòng)調(diào)用。
構(gòu)造:對(duì)象創(chuàng)建自動(dòng)調(diào)用
對(duì)象定義在函數(shù)體內(nèi)部,函數(shù)結(jié)束,對(duì)象被釋放,析構(gòu)自動(dòng)調(diào)用
new---調(diào)用構(gòu)造,delete--析構(gòu)
默認(rèn)構(gòu)造函數(shù)和析構(gòu)
沒(méi)有定義構(gòu)造函數(shù)類(lèi),可用初始值列表初始化。
只要定義了一個(gè)構(gòu)造函數(shù),系統(tǒng)不在提供默認(rèn)構(gòu)造函數(shù)。
每個(gè)系統(tǒng)必須有一個(gè)虛構(gòu)函數(shù),沒(méi)有會(huì)默認(rèn)提供。