首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >虚拟继承对性能的影响

虚拟继承对性能的影响
EN

Stack Overflow用户
提问于 2011-02-04 23:24:42
回答 2查看 9.1K关注 0票数 26

我正在考虑在实时应用程序中使用虚拟继承。使用虚拟继承是否具有与调用虚拟函数类似的性能影响?有问题的对象将只在启动时创建,但我担心的是,层次结构中的所有函数都将通过vtable分派,还是只有虚拟基类中的函数才会分派。

EN

回答 2

Stack Overflow用户

发布于 2011-02-04 23:56:59

你确定你指的是虚拟继承吗?如果是这样的话,它与普通虚函数调用的开销是相同的。vtable链式搜索只遵循指定的路径。

你说这是在初创阶段。您的磁盘开销(从简单地将代码加载到内存)可能比vtable查找所需的半打左右的指令多几个数量级的时间。如果你能分析这一点并发现其中的不同,我会感到有点惊讶。

票数 0
EN

Stack Overflow用户

发布于 2021-07-29 19:51:32

在没有检查编译或运行时细节的情况下,根据我使用GNU C++17进行的测试,访问虚拟基类中的数据成员对性能没有影响。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4899657

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档