c++多态

大家都知道c++有三大特性,封装、继承、多态,个人认为多态是比较难理解的。
对象分为静态模型和动态模型

这里写图片描述
这里写图片描述

多态,字面理解就是一个事物有多种形态。多态也分为静态多态和静态多态,静态多态有函数重载和泛型编程,函数重载即相同函数名,不同参数列表的多个函数,而泛型编程是一种模式,泛型,即是把数据类型作为一种参数进行传递。泛型编程的典型泛型编程的代表作品STL,是一种高效、泛型、可交互操作的软件组件。STL以迭代器 (Iterators)和容器(Containers)为基础,是一种泛型算法(Generic Algorithms)库,容器的存在使这些算法有东西可以操作。STL包含各种泛型算法(algorithms)、泛型迭代器(iterators)、泛型容器(containers)以及函数对象(function objects)。

这里写图片描述
而动态多态即为c++的虚函数。
静态多态:编译器在编译期间完成的,编译器根据函数实参的类型(可能会进行隐式类型转换),可推断出要调用那个函数,如果有对应的函数就调用该函数,否则出现编译错误。
动态绑定:在程序执行期间(非编译期)判断所引用对象的实际类型,根据其实际类型调用相应的方法。

什么是c++虚函数?

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值