比如这样的两个类:
class Base {
public:
virtual void f();
};
class Drived:public Base{
public:
virtual void f();
};
如果我们把 Base obj=Drived();
obj会切割Drived
但是它因此应该会完全获得Drived的虚表指针,
Drived的虚函数表里指向的应该是Drived::f() 吧
感觉 obj.f() 会继续调用Drived::f()而不是Base::f();
然而实际上是不执行多态的....
这是为什么 是不是中间还有其他的什么步骤