繁体   English   中英

为什么虚拟表很重要?

[英]why virtual table matters?

为了实现动态绑定,对于每个类,都有一个虚拟表来存储每个函数的地址。 为什么需要这种间接方式? 我们可以让类直接将ptr存储到正确的函数吗?

实际上,您可以这样做。 然后, 每个多态类的 每个实例都需要将其整个虚拟表存储为对象的一部分。 对于具有大量虚拟方法的类,这将是相当大的内存开销。 无法保证它甚至会更快,因为您可以通过存储大量冗余数据来降低缓存的位置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM