为什么我们不对非虚函数使用相同的方法?
我的意思是,为什么我们以这种方式使用虚函数?我们不能只将它们用作非虚拟的并覆盖它们吗?
如果这种方法节省了我们的时间/空间或者什么,我们为什么不对非虚函数使用相同的方法呢?我的意思是,对于特定的类,将有一个函数表是有意义的.
无论如何,提前谢谢,我只是有点困惑.
如果不使用间接级别,则不能具有运行时多态性.这就是vptr的用途.
vptr不用于非多态函数,因为间接成本有所欠缺.C++哲学是你不为你不使用的东西买单.
编辑:
以下是有关虚拟表如何工作的一些信息:http://en.wikipedia.org/wiki/Virtual_table
| 归档时间: |
|
| 查看次数: |
316 次 |
| 最近记录: |