在C ++中使用多态时,了解它的重要事实是什么。
例如,从derived
投射到base
时,应该注意什么?
什么时候可以上线,什么时候不可以? 你什么时候需要一个'虚拟'析构函数?什么时候不需要?
使用从base到派生对象的指针时需要注意什么?
关于具有多态类型的sizeof(*this)
,现在只有discussion in the C++ lounge,这激发了我提出这个问题。
像这样一个“模糊”的事实:
“如果你有一个隐藏在Base&后面的Derived,那么静态类型是Base,而动态类型是Derived。”
在这个问题中,也是我正在寻找的东西。
答案 0 :(得分:5)
阅读“Effective C ++”和“更有效的C ++”。在这里回答你的问题实际上需要写一本小书。