《深度探索C++对象模型》3

第六章:执行期语意学

全局对象的初始化:

 

 

局部静态对象的初始化:

构建对象数组的vec_new()函数:

针对数组的new操作:

 

placement operator new:

反聚合提高效率:

 模板对name决议规则:

 虚函数表放在类的第一个非内联非虚函数定义的文件中:

明确要求将template具现出来(整个class、个别成员函数、):

异常处理需要编译器产生数据结构及运行期异常库合作:

因此需要在程序大小和执行速度之间有所抉择。

C++异常处理语法:

异常发生时编译系统处理步骤:

编译器会为每一个异常和catch子句产生类型描述器,当异常产生时通过比较类型描述器处理:

异常的抛出和传递:

C++异常处理付出代价最大:

dynamic_cast:

dynamic_cast运算符也可作用于reference:

typeid运算符可以作用于reference:

type_info:

 C++的优劣——效率与弹性:

原文地址:https://www.cnblogs.com/ph829/p/5696241.html