首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
在下列基类的定义中,有无virtual修饰use成员函数的结果将不同,其原因是【 】。 当use()为虚拟函数时的程序执行结果: sizeof(A)=8 sizeof(B)=12
在下列基类的定义中,有无virtual修饰use成员函数的结果将不同,其原因是【 】。 当use()为虚拟函数时的程序执行结果: sizeof(A)=8 sizeof(B)=12
admin
2010-06-06
24
问题
在下列基类的定义中,有无virtual修饰use成员函数的结果将不同,其原因是【 】。
当use()为虚拟函数时的程序执行结果:
sizeof(A)=8
sizeof(B)=12
sizeof(C)=16
当use()非虚拟函数时的程序执行结果:
sizeof(A)=4
sizeof(B)=8
sizeof(C)=12
源程序如下:
#include <iostream. h>
class Grandad
{
public:
Grandad(): money(10) {}
int money;
virtual void use() {}
},
class Father: public Grandad
{
public:
Father( ), money(100) {}
int money;
void use() {}
};
class Son: public Father
{
public:
Son(): money(300){}
int money;
void use(){}
};
void main(void)
{
Grandad A: Father B; Son C;
cout <<"sizeof(A)="<<sizeof(A)<<end1;
cout <<"sizeof(B)="<<sizeof(B)<<end1;
cout <<"sizeof(C)="<<sizeof(C)<<end1
选项
答案
注意缺省构造函数为无参构造函数,且必须为私有数据成员赋初值。
解析
采用虚函数的每个派生类都含有一个指向虚函数表的指针,故多4字节。
转载请注明原文地址:https://jikaoti.com/ti/XPW0FFFM
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
有以下定义语句,编译时会出现编译错误的是()。
软件调试的目的是()。
有如下程序#includeint*sum(intdata){staticintinit=0;init+=data;return&init;}main(){inti,*p;for(i=1;i
若函数调用时的实参为变量时,以下关于函数形参和实参的叙述中正确的是()。
学生的记录由学号和成绩组成,N名学生的数据已在主函数中放入结构体数组S中,请编写函数fun,它的功能是:把低于平均分的学生数据放在b所指的数组中,低于平均分的学生人数通过形参n传回,平均分通过函数值返回。注意:部分源程序在文件PROG1.C中。
下列各组排序法中,最坏情况下比较次数相同的是()。
耦合性和内聚性是对模块独立性度量的两个标准。下列叙述中正确的是
数据库设计中反映用户对数据要求的模式是()。
对序线性表(23,29,34,55,60,70,78)用二分法查找值为60的元素时,需要比较次数为()。
数据库系统在其内部具有3级模式,用来描述数据库中全体数据的全局逻辑结构和特性的是()。
随机试题
Internet是由()发展而来的。
侵蚀性葡萄胎最常见的转移部位是
关于常用铁剂的作用特点,下列说法错误的是
下列关于以公允价值计量的企业非货币性资产交换会计处理的表述中,正确的有()。
根据支付结算法律制度的规定,下列关于单位人民币卡账户的表述中,不正确的是()。
Youmustfacetherealityandknowtheenvironment______.
打开搜狐首页中的【体育】链接,将其中的一幅图片保存到“E:/Tools”文件夹,并将该网页添加到收藏夹中。
创建黑体字的文本标签是______。A.pre/preB.h1/h1C.h6/h6D.b/b
在最坏情况下,堆排序需要比较的次数为【】。
Readthefollowingarticleaboutthecomputerindustry.Foreachquestion(23-28)ontheoppositepage,choosethecorrecta
最新回复
(
0
)