我知道使用 RTTI 会对资源造成冲击,但是这个冲击有多大呢?我看到的所有地方都只是说“ RTTI 是昂贵的”,但是没有一个实际上给出任何基准或者定量数据来保证内存、处理器时间或者速度。
那么 RTTI 到底有多贵?我可能会在嵌入式系统中使用它,因为我只有4MB 的内存,所以每个位都很重要。
编辑: 根据 S · 洛特的回答,如果我包括我实际上在做什么会更好。因此,仅使用虚函数很难完成这项工作。似乎使用一些 dynamic_cast
可以通过允许不同的派生类通过不同的级别来解决这个问题,但是仍然允许它们完全不同的操作。
根据我的理解,dynamic_cast
使用 RTTI,所以我想知道在一个有限的系统上使用它是否可行。