帮忙用C++语言写一个类层次结构,使用继承和多态,具体事例不限,

来源:百度知道 编辑:UC知道 时间:2024/06/06 11:54:01

//用C++语言写一个类层次结构,使用继承和多态,具体事例不限
#include <iostream>
using namespace std;
//------------------------------------------------------------------------------
class Base
{
public:
virtual void fn(){cout<<"In Base class\n";}
};

class Sub:public Base
{
public:
virtual void fn(){cout<<"In Sub class\n";}
};

void Test(Base& b){b.fn();}//基类为形参,引用调用
//------------------------------------------------------------------------------
int main()
{
Base bc;
Sub sc;
Test(bc);
Test(sc);

system("pause");
return 0;
}
//==============================================================================
结果为:
In Base class
In Sub class

在这里就可以看出多态了,传的是子类对象,调用的也是子类对象!但形参是基类,所以子类对基类进行了覆盖. 但多态只能体现在传指针和引用上,要是传值就不具有多态了,因为没有了可选性.

晕, 这么简单的问题也要发上来,基础的东西啦~~自已做会