#include<iostream> using namespace std; class B0{ public: virtual void display(){ cout<<"B0::display()"<<endl; } }; class B1:public B0{ public: void dispaly(){ cout<<"B1::display()"<<endl; } }; void fun(B0 * ptr){ ptr->display(); } int main(){ B0 b0; B1 b1; fun(&b0); fun(&b1); return 0; } 的运行结果
时间: 2024-03-08 14:50:38 浏览: 94
使用include <iostream>时一定要加using namespace std
运行结果为:
```
B0::display()
B1::display()
```
因为B1继承自B0,并重写了B0中的display()方法。在调用fun()函数时,传入的参数是指向B0或其子类的指针,因此会调用相应对象的display()方法。对于B0对象,调用B0中的display()方法,输出"B0::display()";对于B1对象,调用B1中重写的display()方法,输出"B1::display()"。
阅读全文