舉報

會員
C++對象模型詳解
最新章節:
8.9 總結
本書基于GCC/Clang編譯器深入講解C++對象模型的相關知識,涵蓋C++對象的內部工作原理及底層的匯編實現機制。本書先介紹對象模型的基本概念,并引入兩個用于研究C++代碼實現的開源工具一cppinsights和CompilerExplorer。接著,依次講解C++數據語義學,即編譯器如何布局C++對象模型中的數據成C++函數語義學,包括編譯器如何實現C++中的多態、如何調用虛函數等;C++構造、析構語義學,涉及編譯器對C++對象的構造和析構方式,包括全局對象和靜態局部變量的構造等內容;C++異常處理,包括GCC中異常處理的實現方式及實踐準則;C++運行時類型識別(RTTI)的實現原理,包括dynamic_cast算法的具體實現;C++NameMangling規則,包括GCC對C++代碼中各個名稱的編碼方式。本書適合有意深入理解C++對象模型、了解C++代碼底層實現的讀者閱讀。閱讀本書需要具備一定的C++基礎知識。
目錄(55章)
倒序
- 封面
- 版權信息
- 版權
- 內容提要
- 推薦語
- 前言
- 資源與支持
- 資源獲取
- 提交勘誤
- 與我們聯系
- 關于異步社區和異步圖書
- 第1章 概述
- 第2章 工具
- 2.1 使用cppinsights
- 2.2 使用Compiler Explorer
- 2.3 總結
- 第3章 數據語義學
- 3.1 數據成員布局
- 3.2 繼承與數據成員
- 3.3 數據成員的存取
- 3.4 指向成員變量的指針
- 3.5 總結
- 第4章 函數語義學
- 4.1 C++函數決議
- 4.2 虛表構造
- 4.3 成員函數的調用方式
- 4.4 虛成員函數的調用方式
- 4.5 指向成員函數的指針
- 4.6 總結
- 第5章 構造、析構語義學
- 5.1 對象構造
- 5.2 對象析構
- 5.3 全局對象構造與析構
- 5.4 總結
- 第6章 異常處理
- 6.1 C++異常的約定
- 6.2 GCC中C++異常的實現
- 6.3 現代C++中的異常介紹
- 6.4 C++異常的處理
- 6.5 總結
- 第7章 運行時類型識別
- 7.1 RTTI布局
- 7.2 typeid操作符
- 7.3 dynamic_cast算法
- 7.4 總結
- 第8章 Name Mangling規則
- 8.1 基本概念
- 8.2 操作符的編碼
- 8.3 一些特殊函數和實體的編碼
- 8.4 類型編碼
- 8.5 表達式編碼
- 8.6 作用域編碼
- 8.7 lambda表達式編碼
- 8.8 壓縮
- 8.9 總結 更新時間:2025-08-07 17:36:05
推薦閱讀
- 零基礎學Visual C++第3版
- Python入門很簡單
- Building a Home Security System with Raspberry Pi
- C#完全自學教程
- 樂高機器人設計技巧:EV3結構設計與編程指導
- 看透JavaScript:原理、方法與實踐
- MySQL數據庫管理與開發(慕課版)
- Python算法從菜鳥到達人
- WebRTC技術詳解:從0到1構建多人視頻會議系統
- Apache Spark 2.x for Java Developers
- 零基礎入門學習Python(第2版)
- 計算機應用基礎(第二版)
- Mastering XenApp?
- Building Microservices with Go
- Flask Web開發實戰:入門、進階與原理解析
- 區塊鏈原理、設計與應用
- Learning Android Application Development
- Mastering Social Media Mining with R
- C#多線程編程實戰
- Learning IPython for Interactive Computing and Data Visualization(Second Edition)
- Mastering Kali Linux for Advanced Penetration Testing(Second Edition)
- 計算機網絡概論(第二版)
- Drupal 7 Webform Cookbook
- 基于Eclipse平臺的JSP應用教程(第2版)
- React Material:UI Cookbook
- ASP.NET Core技術內幕與項目實戰:基于DDD與前后端分離
- 大型網站性能優化實戰:從前端、網絡、CDN到后端、大促的全鏈路性能優化詳解
- C語言程序設計實驗指導與習題精選
- Flutter開發實例解析
- 健壯的Python