1. 程式人生 > >《深度探索C++物件模型》學習總結(一)——前言與導讀

《深度探索C++物件模型》學習總結(一)——前言與導讀

前言

Foundation專案:為了構建大系統而努力定義的一個新的開發模型。
ALF:一種一面物件層次結構,提供一個永久的、以語意為基礎的表現法。
Simplifier的工作:轉換內部的程式表現。
任何物件模型都需要的轉換風味(?):
1. 與編譯器息息相關的轉換(Implementation-dependent transformations)
2. 語言語意轉換(Language semantics transformations)
3. 程式程式碼和物件模型的轉換(Code and object model transformations)

什麼是C++物件模型

  • 語言中直接支援面向物件程式設計的部分。——C++ Primer中介紹
  • 對於各種支援的底層實現機制。——本書關注

書籍結構

  • 第1章,關於物件(Object Lessons),提供以物件為基礎的觀念背景,以及由C++提供的面向物件程式設計正規化(paradigm)。本章包括對物件模型的一個概述,說明目前普及的工業產品。
  • 第2章,建構函式語意學(The Semantics of Constructors),詳細討論constructor如何工作。
  • 第3章,Data語意學,討論data members的處理。
  • 第4章,Function語意學,專注與各式各樣的member functions,尤其是virtual functions。
  • 第5章,構造、析構、拷貝語意學,討論如何支援class模型,討論object的生命期。
  • 第6章,執行期語意學,檢視執行期的某些物件模型行為。包括臨時性物件的生命及其死亡,以及對new運算子和delete運算子的支援。
  • 第7章,在物件模型的尖端(On the Cusp of the Object Model),專注於exception handling,template support,runtime type identification。

導讀