10 2022 档案

摘要:这篇博客开始总结《深度探索C++对象模型》的第四章,即C++中成员函数(除了构造函数和析构函数)相关的内容。只是简单介绍了C++类中的成员函数,包括常规成员函数、虚函数、静态函数。 阅读全文
posted @ 2022-10-31 10:43 流云cpp 阅读(101) 评论(0) 推荐(0) 编辑
摘要:这篇讲一下《深度探索C++对象模型》第三章最后没总结的一部分,就是类的成员变量指针。 阅读全文
posted @ 2022-10-27 22:00 流云cpp 阅读(86) 评论(0) 推荐(0) 编辑
摘要:上一篇博客[《C++对象模型:g++实现(一)》](https://www.cnblogs.com/lycpp/p/16827701.html)用我的理解总结了在无继承体系下g++实现的C++对象的内存布局,这篇就来总结一下在有继承情况下的C++对象的内存布局。 阅读全文
posted @ 2022-10-27 17:04 流云cpp 阅读(133) 评论(0) 推荐(0) 编辑
摘要:刚看完了《深度探索C++对象模型》第三章,这里做一下总结,也写一下我自己在g++ 7.5.0上的验证。 本文中所有的源文件都可以在这里拿到(百度网盘链接)。 注意,这里所说的“对象”是指在C++中使用class或struct关键字创建的类的实例。 1. 无继承情况下的C++对象内存布局 首先当然是从 阅读全文
posted @ 2022-10-26 11:32 流云cpp 阅读(261) 评论(0) 推荐(0) 编辑
摘要:引用不能绑定到"无物"? 在《深度探索C++对象模型》第3.4节中提到: 至于reference,则不需要针对可能的0值做防卫,因为reference不可能参考到“无物”(no object). 但实际上,因为referennce实际上是指针,可以设法将reference设为nullptr,如下: 阅读全文
posted @ 2022-10-24 21:58 流云cpp 阅读(28) 评论(0) 推荐(0) 编辑
摘要:具名返回值优化(NRV) 最近在看《深度探索C++对象模型》,在第2.3节中提到了具名返回值优化(Named Return Value optimization, NRV),如下: #include <iostream> class Test{ public: explicit Test(int i 阅读全文
posted @ 2022-10-24 18:45 流云cpp 阅读(401) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示