测试:一个派生类对象,用不同的指针指向她。
#includeusing namespace std; class base { public: virtual void func(){cout<<"base"< func(); derive* ptr2 = (derive*)ptr1;//再用派生类指针,需要强制转换 ptr2->func(); base* ptr3= ptr2;//再用基类指针 ptr3->func(); } int main(void) { test(); return 0; }
输出:
derive derive derive