我们平时都会使用虚函数来实现 C++ 里的运行时的多态,但是虚函数会带来很多性能上面的问题: 虚函数的调用需要额外的寻址 虚函数不能被 inline,当使用比较小的虚函数的时候会带来很严重的性能负担 需要在每个对象中维护一个额外的虚函数表 但是在有些情况下,我们就可以用一些静态的类型分发策略来带来一些性能上面的好处。 1 一个传统的例子 c++ struct VirtualInterface { …
我们平时都会使用虚函数来实现 C++ 里的运行时的多态,但是虚函数会带来很多性能上面的问题: 虚函数的调用需要额外的寻址 虚函数不能被 inline,当使用比较小的虚函数的时候会带来很严重的性能负担 需要在每个对象中维护一个额外的虚函数表 但是在有些情况下,我们就可以用一些静态的类型分发策略来带来一些性能上面的好处。 1 一个传统的例子 c++ struct VirtualInterface { …
讨论
登录后参与讨论
还没有评论,来说第一句吧。