首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
下列关于虚函数的描述中,正确的是( )。
下列关于虚函数的描述中,正确的是( )。
admin
2010-06-06
30
问题
下列关于虚函数的描述中,正确的是( )。
选项
A、如果在重定义函数时使用了保留字virtual,则该重定义函数仍然是虚函数
B、虚函数不得声明为静态函数
C、虚函数不得声明为另一个类的友元函数
D、派生类必须重新定义基类的虚函数
答案
2
解析
被关键词virtual说明的函数称为虚函数。对于虚函数有以下限制:
①只有类的成员函数才能说明为虚函数。这是因为,虚函数仅适用于有继承关系的类对象,所以普通函数不能说明为虚函数。
②静态成员函数不能是虚函数,因为静态成员函数不受限于某个对象。
③内联函数不能是虚函数,因为内联函数是不能在运行中动态确定其位置。即使虚函数在类的内部定义,编译时仍将其看作是非内联的。
④构造函数不能是虚函数,因为构造时对象还是一片未定型的空间。只有在构造完成后,对象才能成为一个类的名副其实的实例。 、
⑤析构函数可以是虚函数,而且通常说明为虚函数。说明虚函数的目的在于:使用 delete运算符删除一个对象时,能确保析构函数被正确地执行。这是因为设置虚析构函数后,可以利用动态联编方式选择析构函数。
⑥一般要求基类中说明了虚函数后,派生类说明的虚函数应该与基类中虚函数的参数个数相等,对应参数的类型相同。如果不相同,则将派生类虚函数的参数类型强制转换为基类中虚函数的参数类型。
转载请注明原文地址:https://jikaoti.com/ti/C4W0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
使用VC++2010打开考生文件夹下blank1中的解决方案。此解决方案的项目中包含一个源程序文件blank1.c。在此程序中,函数fun的功能是:输出a所指数组中的前n个数据,要求每行输出5个数。请在程序的下画线处填入正确的内容并把下画线删除,使程序得
有以下程序:#include<stdio.h>main(){ints;scanf("%d",&s);while(s>0){switch(s){case1:printf("%d",s+5);case2:printf("%d",s+4);br
有以下程序:#includemain(){intx,a=1,b=1;while(1){scanf(’’%d’’,&x);if(x>0){a*=x;break;}if(x<0){b*=x;continue;}printf(’’%d,%d\n
以下程序的输出结果是()。#includemain(){inta[3][3]={0,1,2,0,1,2,0,1,2},i,j,s=1;for(i=0;i
以下不能输出字符A的语句是(注:字符A的ASCII码值为65,字符a的ASCII码值为97)()。
给定程序中,函数fun的功能是:将形参n中,各位上为偶数的数取出,并按原来从高位到低位的顺序组成一个新的数,并作为函数值返回。例如,从主函数输入一个整数:27638496,函数返回值为:26846。请在程序的下划线处填入正确的内容并把下
关于软件危机表现的叙述中不正确的是()。
若i、j己定义成int型,则以下程序段中内循环体的总执行次数是()。for(i=6;i>0;i--)forIj=0;j<4;j++){…}
一个栈的初始状态为空。现将元素1、2、3、4、5、A、B、C、D、E依次入栈,然后再依次出栈,则元素出栈的顺序是()。
关于new运算符的下列描述中,错误的是()。
随机试题
早在夏朝时期,_______、在夏、商、周和春秋战国时期,_______、秦朝的________、唐朝的对外经济交往空前兴旺发达。
简述人口因素在社会发展中的作用。
囊性支气管扩张时可见多个圆形薄壁透亮区,直径为
热拌沥青混合料施工相邻两幅及上下层的横接缝应错位()以上。
城市消防远程监控系统由()等几部分组成。
下列选项中,不属于复式记账法的是()。
我国宪法规定:“中华人民共和国是工人阶级领导的、以工农联盟为基础的人民民主专政的社会主义国家。”这表明了我国的()。
下列选项中,在当事人没有明确约定的情况下,不属于建设:[程合同承包人行使优先受偿权范围的是()。
若要求输入的数据具有固定的格式,应设置字段的属性是
CreaturesoftheThermal(热量的)VentsThethree-personsubmersibleAlvinsankthroughthecold,darkwatersofthePacificOc
最新回复
(
0
)