1.編寫頭文件時(shí)要加上防衛(wèi)式聲明
2.模板的定義和使用
有時(shí)候我們不確定要定義的類里面的數(shù)據(jù)類型,因此我們使用模板來定義這個(gè)數(shù)據(jù)。 這樣在類實(shí)例化的時(shí)候可以臨時(shí)定義它的數(shù)據(jù)類型。
使用模板T時(shí)要在開頭加上一句聲明。
3.訪問級別
(1)主要分為public、private、protected三種級別。 主要是把函數(shù)放入public,將數(shù)據(jù)放入private封存起來。
(2)構(gòu)造函數(shù)放置于private區(qū)域
用處:
如果一個(gè)類的構(gòu)造函數(shù)只有一個(gè)且是private,并且類的內(nèi)部有專門創(chuàng)建實(shí)例的代碼,則只能創(chuàng)建一個(gè)或多個(gè)實(shí)例(根據(jù)類內(nèi)部聲明的成員對象個(gè)數(shù)來定)。
舉例:
classA{public:staticA& getInstance( );
setup( )
{
...
}
private: A( );
A(constA& rhs );
};
A& A::getInstance( )
{
staticA a;returna;
}
在使用的時(shí)候應(yīng)使用如下代碼:
A::getInstance().setup();
4.傳訊的三種方式
by value 或by reference(to const)
為了保證C++編譯執(zhí)行的效率,一般選用by reference(傳地址),若不想改變內(nèi)容,則by reference to const
5.參數(shù)傳遞&運(yùn)算符重載:
傳遞參數(shù)一般使用引用傳遞(pass by reference)。
因?yàn)轭惱锏臄?shù)據(jù)一般較為龐大,如果使用值傳遞會(huì)消耗較大的資源,而引用在底層就相當(dāng)于指針,因此可以消耗少量資源進(jìn)行參數(shù)的傳遞。