天天看點

《關于智能指針、Class與Interface》

《關于智能指針》

比較智能的進行資源的動态配置設定和回收,一個非常非常重要的概念就是引入了引用計數。智能指針不僅僅是一個裸指針,而是一個行為像指針的類

所謂的引用計數的工作原理,有以下四點:

1、當我們建立一個對象時,隻有一個對象共享狀态,是以我們把目前對象的引用計數置為一。

2、拷貝構造函數不配置設定新的計數器,而是拷貝給定的對象的資料成員,并且包括計數器,兩者共享一個計數器,因為給定的對象的共享狀态多了一個,是以遞增共享計數器。

3、析構函數遞減計數器,如果目前的計數器值遞減後為零,則析構函數釋放改給定對象。

4、拷貝指派運算符遞增右側對象的計數器,遞減左側對象的計數器,如果左側的對象的計數器被遞減為零,就釋放掉該對象。

《關于Class與Interface》

1、Class對象存在自己的成員資料,執行個體化對象時需要配置設定記憶體空間存儲資料;而接口隻是一批記憶體管理函數,對已有記憶體資料進行管理,沒有自己的資料成員。CAA開發中會預留唯一的接口辨別符友善使用者根據辨別查詢接口;如下

#ifndef LOCAL_DEFINITION_FOR_IID

extern ExportedByCATMecModLiveUseItf IID IID_CATIMmiMechanicalFeature;

#else

extern “C” const IID IID_CATIMmiMechanicalFeature ;

#endif

2.Interface對象可以采用智能指針進行聲明而Class不能使用智能指針。

繼續閱讀