问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

什么是C++虚函数,虚函数的作用和使用方

发布网友 发布时间:2022-09-30 16:26

我来回答

1个回答

热心网友 时间:2024-11-06 16:04

函数返回类型 函数名(参数表) {函数体};实现多态性,通过指向派生类的基类指针或引用,访问派生类中同名覆盖成员函数。

虚函数定义:简单地说,那些被virtual关键字修饰的成员函数,就是虚函数。虚函数的作用,用专业术语来解释就是实现多态性(Polymorphism),多态性是将接口与实现进行分离;用形象的语言来解释就是实现以共同的方法,但因个体差异,而采用不同的策略。

虚函数的作用:用同一个调用形式,既能调用派生类又能调用基类的同名函数。

虚函数的使用方法是:

1. 在基类用virtual声明成员函数为虚函数。
这样就可以在派生类中重新定义此函数,为它赋予新的功能,并能方便地被调用。在类外定义虚函数时,不必再加virtual。
2. 在派生类中重新定义此函数,要求函数名、函数类型、函数参数个数和类型全部与基类的虚函数相同,并根据派生类的需要重新定义函数体。
C++规定,当一个成员函数被声明为虚函数后,其派生类中的同名函数都自动成为虚函数。因此在派生类重新声明该虚函数时,可以加virtual,也可以不加,但习惯上一般在每一层声明该函数时都加virtual,使程序更加清晰。如果在派生类中没有对基类的虚函数重新定义,则派生类简单地继承其直接基类的虚函数。
3. 定义一个指向基类对象的指针变量,并使它指向同一类族中需要调用该函数的对象。
4. 通过该指针变量调用此虚函数,此时调用的就是指针变量指向的对象的同名函数。
通过虚函数与指向基类对象的指针变量的配合使用,就能方便地调用同一类族中不同类的同名函数,只要先用基类指针指向即可。如果指针不断地指向同一类族中不同类的对象,就能不断地调用这些对象中的同名函数。这就如同前面说的,不断地告诉出租车司机要去的目的地,然后司机把你送到你要去的地方。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
小米电视65寸长宽多少厘米 天津冬天的温度标准是多少度 德国冬天温度是多少度 上海的冬天有多少度 浙江冬季温度是多少度 到了冬季哪些省份城市的气温是零度以上? 羊奶粉不溶解是怎么回事? fit和match和suitable的区别? Fit和 Suitable有什么区别? Fit和 "Suitable"有什么区别? 华为手机微信红包提醒怎么设置 华为手机微信红包提醒设置的方法_百度知 ... 在C++中用虚函数的作用是什么?为什么要用到虚函数 c++虚函数的作用是什么? 煮菜什么时候才能熟 煮菜何时才能熟 c 虚函数的作用举例? 幼儿园区角名字 夜景拍摄的6个小技巧 10种适合家养的植物 虚函数有什么作用 鲜羊奶怎么保存 如何保存鲜羊奶 男票是指什么(什么叫做男票) 如何办一场不扰民的马拉松 冬的偏旁是什么怎么读 冬的意思 百香果试管的人可以吃吗 试管冻胚移植怀孕可以吃百香果吗 做完试管移植后能吃百香果吗? 班级体育比赛口号 华为p8怎么进入安全模式 马拉松比赛加油口号 有谁知道《想爱就爱2》里演jam的女演员的资料吗? 有一种甜 有一种甜、有一丝苦是什么意思? 有一种甜,叫做友谊;有一种酸,叫做误会;有一种苦,叫做承担;有一种辣,叫... C++里虚函数有什么作用? 如何用排水法测量泡沫的体积? 如何用排水法测不规则木块体积 怎样测量木块的体积?用排水法测量。 c++中虚函数有什么作用?新手求助! 支付宝生活号看车辆违章几天能看到 有关接头暗号的词怎么讲?比如手里拿着一束花的时候 梦见自己能看见鬼魂有什么征兆 梦见自己能看见鬼魂预示什么 菜鸟求!国泰买以每股6.25元买了100股,以6.41元一次性 卖的、请问交易费... “三鲜水饺”指的是哪3鲜?很多人弄错了,难怪包的水饺不好吃 有关读书的名言 读书破万卷下笔如有神 读书破万卷下笔如有神的意思是什么 出自何典 有关不要放弃读书的经典励志名言名句集合(40条) 关于。不要看低俗的书籍的名言名句? 没有绑定银行卡的微信怎么找回支付密码 做巧果子怎么做好吃 正宗巧果子的制作步骤 巧果做法 巧果制作方法