C++多态中的动态多态:虚函数(前置要求:掌握C++基本语法)

本文介绍了C++中的动态多态概念,重点讲解了虚函数的使用和工作原理。通过理解虚函数如何实现多态,强调了在基类中声明虚函数,子类重写并在运行时根据对象实际类型调用相应函数的重要性。同时,提到了实现多态的三个关键条件,并提供了相关的学习资源。
摘要由CSDN通过智能技术生成

概念(复习用)

什么是多态

多态:在面向对象编程中,一种接口(函数)的多种实现(函数内容,作用域)即为多态;多态分静态和动态;静态是指在编译时就可以确定选择哪种实现,动态是运行时才确定选择哪种实现;
静态有函数重载和泛型编程,如add()根据数据类型重载,在编译时就能选好哪一个;动态是虚函数,比如父类和子类中有同名函数delete_data(),在运行时通过基类指针指向的不同对象来选择到底调用哪个;
C++谈多态一般指动态的多态;

什么是虚函数

虚函数:定义函数时在最前面加上virtua关键字;就定义了一个虚函数;
注意:
1、虚函数只能是类中的非静态成员函数,也就是普通成员函数和析构函数;
2、不能是构造函数,但可以是析构函数;

怎么实现(多态)多态

C++用虚函数来实现,在父类中定义虚函数,子类中重写,运行时根据对象的实际数据类型来调用相应函数,如果对象类型是基类,则调用基类的虚函数,反之调用子类的虚函数;
三个条件:
1、前提:有子类有继承;
2、在子类中必须对基类的虚函数进行重写;
3、必须通过基类指针指向子类对象或者基类引用子类对象;
怎么理解:
1、有继承才有一个函数名在父、子类中不同的实现,才能谈多态;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值