類(二)

類的作用域

類的定義分為兩步

  • 編譯成員的聲明
  • 知道類全部可見(jiàn)后才編譯函數(shù)

在成員函數(shù)中進(jìn)行名字查找的過(guò)程:

  • 在函數(shù)內(nèi)部查找名字的聲明
  • 第一步?jīng)]有找到,則在類中繼續(xù)查找
  • 如果類內(nèi)也沒(méi)有,則在成員函數(shù)定義之前的聲明中進(jìn)行查找

如果外層對(duì)象被隱藏,可以使用域運(yùn)算符進(jìn)行訪問(wèn)即符號(hào)::

構(gòu)造函數(shù)再探

  • 使用構(gòu)造函數(shù)對(duì)成員進(jìn)行初始化

  • 成員初始化順序最好與參數(shù)列表順序保持一致,且初始化成員時(shí)應(yīng)避免有依賴關(guān)系。

  • explicit 關(guān)鍵字用于抑制構(gòu)造函數(shù)定義的隱式轉(zhuǎn)換

  • 聚合類
    當(dāng)一個(gè)類滿足下面條件就稱為聚合類:所有成員為public,沒(méi)有定義構(gòu)造函數(shù),沒(méi)有類內(nèi)初始值,沒(méi)有基類也沒(méi)有virtual函數(shù)

類的靜態(tài)成員

通過(guò)static關(guān)鍵字實(shí)現(xiàn)

定義

class Account{
  public:
      static double rate(){return 0};
}
  • 靜態(tài)類成員,被所有類生成的對(duì)象公有

使用靜態(tài)成員

double r;
r= Account::rate();
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容