c++讲义 第9章 多态性

本文深入探讨了C++中的多态性概念及其应用。详细介绍了多态性的四种类型:重载多态、强制多态、包含多态和参数多态,并通过示例讲解了虚函数的具体使用方法。

《C++程序设计》教学讲义9章


第9章 多态性

§9.1 多态性
一、多态性概念
同样消息被不同类型的对象接收导致不同行为。
二、多态类型
专用多态
1、重载多态——运算符重载
2、强制多态——强制类型转换
通用多态
3、包含多态——虚函数
4、参数多态——类模板
三、多态实现
静态联编、动态联编

§9.2 虚函数(virtual)
例题:
#include <iostream>
using namespace std;

class A
{
public:
virtual void Show();
};

void A::Show()
{
cout<<"A Show 被调用。"<<endl;
}

class B1:public A
{
public:
void Show();
};

void B1::Show()
{
cout<<"B1 Show 被调用。"<<endl;
}

class B2:public A
{
public:
void Show();
};

void B2::Show()
{
cout<<"B2 Show 被调用。"<<endl;
}

void Fun(A &a)
{
a.Show();
}

void Fun2(A* p)
{
p->Show();
}

int main()
{
A a;
a.Show();
B1 b1;
Fun(b1);
B2 b2;
A* p = &b2;
Fun2(p);

return 0;
}

§9.3 抽象类(virtual)
一、纯虚函数
virtual 返回值类型 函数名(参数列表)=0;
二、抽象类
带有纯虚函数的类是抽象类。
抽象类不能实例化。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值