編碼標(biāo)準(zhǔn):
- 封裝和隔離。
- 在聲明一個(gè)類的時(shí)候,應(yīng)避免暴露出其私有成員。
- 應(yīng)該使用一個(gè)形如“struct Xxxxlmpl *pimpl_”的不透明的指針來(lái)存儲(chǔ)私有成員(包括狀態(tài)變量和成員函數(shù))。
使用pimpl(編譯器防火墻)可以大大降低代碼之間的相互依賴性,對(duì)于pimpl_需要注意:
- pimpl_中存儲(chǔ)的是私有變量和私有成員函數(shù)。
- 一般需要一個(gè)反向指針(習(xí)慣稱為self_)來(lái)調(diào)用可見(jiàn)類的函數(shù)。
- 即使虛擬函數(shù)是私有的,也不能把虛擬成員函數(shù)隱藏在pimpl類中。
文章來(lái)源:
http://my.donews.com/robinchow/2007/01/13/qwtfsgyamrxaxddpwhxeyatxgntnrlthhnna/