您的位置:首页 > 编程语言 > C语言/C++

深度探索c++对象模型前4章读后感

2013-09-28 00:10 155 查看
最近经别人推荐买了本新书<<inside the c++ object model>>读了前4章,感觉受益颇多,让我对c++区别于c的实现机制有了更加清楚的了解,以及对面向对象模型的构建有了更加清晰的认识。
我这个人很懒,只想总结精华的部分:
1.c++的类拥有vtable指针,指针指向的记录有类类型、虚函数的地址、虚基偏移量等信息,来实现c++的精华特色:多态(当然前提必须该类有虚函数或者有虚继承一个基类才会有这个虚函数表)。
2.c++的单继承、多继承、以及虚继承之间的内存模型之间的区别:(假定每一个类都有虚函数,或基类有虚函数)
2.1. 继承的类如果有vtable的 则公用继承第一个父类的vtable
2.2. 多继承情况下会拥有多个vtable,调用函数时this指针也会有偏移,多重继承的内存模型的分部情况
2.3. 对于虚基继承的情况内存模型
3.根据2所述,以后尽量不使用多继承以及虚基继承
4. 了解了关于c++编译器处理编译c++优化的相关知识

总之感觉这本书很值得一读,我会将这本书慢慢读完的~~~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  c++