C++的多态性

本文详细介绍了多态性的概念,包括静态多态性和动态多态性的实现方式,通过函数重载、运算符重载及虚函数等手段来实现,并探讨了它们在基类与派生类之间的应用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

  1. 多态性就是用一个函数名定义不同的函数;
  2. 静态多态性。同一个类中的同名函数,定义时在形式参数的个数、顺序、类型方面有所不同,在程序编译时就能根据实际参数与形式参数的匹配情况,确定该类对象究竟调用了哪一个成员函数。静态多态性可以通过函数重载和运算符重载实现;
  3. 动态多态性。在基类与派生类中存在的同名函数,要求该同名函数的原型在基类和派生类中完全一致,而且是虚函数。在编译时无法确定究竟调用的是哪一个同名函数,只有在程序运行时,通过基类的指针指向基类或派生类对象,或基类的引用代表的是基类或派生类的对象,确定调用的是基类还是派生类中的同名函数;
  4. 函数重载和运算符重载;
  5. 虚函数。当基类的指针指向基类对象时调用基类中的同名函数,而指向派生类对象时就调用派生类的同名函数,也就是说究竟执行哪一个类中的同名函数,要等到运行到这条语句时才能决定,这就是实现动态多态性的效果;


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值