1. 目标:
C++的语法规格(C++ 标准)如何具体实现出来的,
即编译器如何理解并构建一系列的数据结构,
去扩充/优化/翻译cpp源代码,然后组成串行指令,确保最终代码能够准确而高效执行.
大致包括1). 编译器功能的思考和设计逻辑
2).cpp源代码的编译+链接(不用生成汇编)的步骤.
2.构造函数语义学:
遵循语意(C++ 标准)前提下,
编译器获取最高的优化效率,即哪些步骤被跳过了.
3.Data语义学:
遵循语意(C++ 标准)前提下,如何存储Data.
在计算机当中,地址都是一维(线性)的,需要有一种简单直接的逻辑访问数据.
4.Function语意学:
遵循语意(C++ 标准)前提下,如何处理vtbl,确保准确性和效率的平衡.
5.构造,解构,拷贝语意学
遵循语意(C++ 标准)前提下,
由于计算机的执行是一维(线性)的,需要合理安排各个步骤的先后顺序.
6.执行期语义学
遵循语意(C++ 标准)前提下,
编译器如何把C++代码扩展为一个阶梯一个阶梯操作的步骤,从而一步一步执行.
7.站在对象模型的尖端
遵循语意(C++ 标准)前提下,
Template处理的实际遇到问题和理论复杂性.