《提高C++性能的編程技巧》—— 第十二章 引用計(jì)數(shù)

內(nèi)存訛誤(memory corruption):內(nèi)存泄漏、過(guò)早的刪除操作
C++針對(duì)這兩種問(wèn)題提供了解決方案:引用計(jì)數(shù)(reference counting),基本思想是:
將銷(xiāo)毀對(duì)象的職責(zé)從客戶(hù)端代碼轉(zhuǎn)移到對(duì)象本身。對(duì)象跟蹤記錄自身當(dāng)前被引用的數(shù)目,在引用計(jì)數(shù)達(dá)到零時(shí)自行銷(xiāo)毀。

總結(jié):下面任意一種情況都可以是引用計(jì)數(shù)變的更為有效
a. 目標(biāo)對(duì)象是很大的資源消費(fèi)者
b. 資源分配和釋放的代價(jià)很高
c. 高度共享:由于使用賦值操作和拷貝構(gòu)造函數(shù),引用計(jì)數(shù)的性能可能會(huì)很高
d. 創(chuàng)建和銷(xiāo)毀引用的代價(jià)低廉
反之,則應(yīng)跳出引用計(jì)數(shù)而使用更加有效地簡(jiǎn)單非計(jì)數(shù)對(duì)象

?著作權(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)容