![](https://img-blog.csdnimg.cn/20201014180756724.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++台面下的机制
yangbostar
这个作者很懒,什么都没留下…
展开
-
C++底层机制(一)——开篇
很少有人质疑C语言生成代码的高效和精悍,然而C++究竟能多么接近C语言的水平呢? 相信长期以来存在这样的共识,核心算法为了效率常常抛弃C++而使用C,他们认为C++庞大又迟缓,比如他们拒绝使用C++编写数据库引擎,他们说:“继承和重载降低效率,并且C++背着你做很多事情” 我相信通过之后的一系列文章,会帮助您破除围绕在C++周围的迷信和传说。 除此之外,了解C++底层机制还能帮助您调试代码,同时避免将C语言的技巧移植到C++时,陷入险境。 另外,对于一些某些只提供C语言接口的平台,比如原创 2010-08-03 22:30:00 · 2244 阅读 · 0 评论 -
C++实现机制(二)——编译器实现对象模型的方法
没错哦,从题目可以看出本章是讲述编译器构建Class的方法。 作为C++核心基础之一的class,了解编译器背后为其做了哪些,是认识C++底层实现机制的关键,同时我看到,很多人在各类文章的只言片语中,对其进行了大量的充满迷信和传说的诠释。 要讲class,就不得不说说struct,因为编译器在构建它们的数据成员的方法上是相似的。这也是我最想让你知道的,即“通过类封装数据和操作本身是绝对没有额外成本的,效率和空间的牺牲大部分在于虚表的维护” 回到正题,我们实际上可以认原创 2010-08-04 11:40:00 · 1359 阅读 · 2 评论 -
C++实现机制(三)——虚函数表
<br /> C++中的虚函数的作用主要是实现了多态的机制。关于多态,简而言之就是用父类型别的指针指向其子类的实例,然后通过父类的指针调用实际子类的成员函数。这种技术可以让父类的指针有“多种形态”,这是一种泛型技术。所谓泛型技术,说白了就是试图使用不变的代码来实现可变的算法。比如:模板技术,RTTI技术,虚函数技术,要么是试图做到在编译时决议,要么试图做到运行时决议。 <br /> <br /> 虚函数(Virtual Function)是通过一张虚函数表(Virtual Table)来转载 2010-08-09 19:20:00 · 1269 阅读 · 3 评论