《深度探索C++对象模型》 阅读笔记及翻译勘误/建议
《深度探索C++对象模型》 阅读笔记及翻译勘误/建议,以作共勉!
yiqiaoxihui
他强由他强,清风拂山岗!
展开
-
《深度探索C++对象模型》勘误表
1.P32页--翻译建议2.P37页 第二章标题 构造函数语意学,语意->语义 原文:The Semantics of Constructors,Semantics 显然是语义而非语意。原创 2018-06-08 10:55:20 · 417 阅读 · 0 评论 -
《深度探索C++对象模型》 第一章笔记
1.关于类本身占用内存大小class Point { public: Point( float xval ); virtual ~Point(); float x() const; static int PointCount(); protected: virtual ostream& print( ostream &...原创 2018-06-07 23:57:53 · 398 阅读 · 1 评论 -
《深度探索C++对象模型》 构造函数语义学 第二章笔记
本章主要介绍类的构造函数有关的语义(semantics)1.默认构造函数原创 2018-06-11 11:06:33 · 278 阅读 · 0 评论 -
《深度探索C++对象模型》 Data语义学 第三章笔记
本章主要讨论类的成员变量(Data Member)的相关语义。1.Data Member 的绑定2.Data Member的布局3.3Data Member的存取可以想象,一下几种情况对Data Memeber的访问赋值有所区别:1.单一继承2.多重继承3.虚继承(virtual inheritance)4.多态下的成员操作有所区别的根本原因还是成员在对象中的存储结构。因此先理解这几种情况下对象的...原创 2018-06-11 11:42:38 · 301 阅读 · 0 评论 -
《深度探索C++对象模型》 Function语义学 第四章笔记
本章主要探讨C++类的成员函数(member function):static、nonstatic、及vritual函数调用方式的区别。1.1非静态成员函数C++类的非静态成员函数(nonstatic member function)被设计为和普通非成员函数具有相同的效率。可以思考怎样将一个成员函数转化为一个非成员函数?解决这个问题,首先需要搞清楚他们之间有何区别。可以想象,最大的区别就是非成员函...原创 2018-06-14 12:03:04 · 281 阅读 · 1 评论 -
《深度探索C++对象模型》 构造、析构、拷贝语义学 第五章笔记
本章主要介绍在不同的继承体系下,针对类的构造、析构及拷贝操作,编译器为其做了哪些工作。1.继承体系下的对象构造我们使用构造函数的初始化成员列表初始化成员时,对于对象会分别调用其拷贝构造函数。含有虚函数的,编译器在其构造函数中设置虚函数表,这是最好的时机。但可以考虑和初始化成员哪个放前面好?虚拟继承体系下,对虚基类成员初始化应由最后一层类负责。可以想象,不然呢?交由哪个subobject都不合适。文...原创 2018-06-18 17:28:24 · 244 阅读 · 0 评论