首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: 10 6 30 2 2 注意:错误的语句在//********error********
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: 10 6 30 2 2 注意:错误的语句在//********error********
admin
2017-03-22
39
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
10
6
30
2
2
注意:错误的语句在//********error********的下面,修改该语句即可。
#include
class CMyClass
{
private:
int number;
int Add(int i)
{
return number+=i;
}
int Sub(int i)
{
return number-=i;
}
int Mul(int i)
{
return number*=i;
}
int Div(int i)
{
if(i!=0)
{
return number/=i;
}
else
return number;
}
//********error********
typedef int(FUNC)(int);
//********error********
FUNC func[];
public:
CMyClass()
{
func[0]=CMyClass::Add;
func[1]=CMyClass::Sub;
func[2]=CMyClass::Mul;
func[3]=CMyClass::Div;
number=0;
}
int CallFunction(int i,int j)
{
//********error********
return(func
)(j);
}
};
Void main()
{
CMyClass myobj;
cout<
<
cout<
<
cout<
<
cout<
<
cout<
<
}
选项
答案
(1)typedef int(CMyClass::*FUNC)(int); (2)FUNC func[4]; (3)return(this->*func[i])(j);
解析
(1)在类中定义函数指针须指定类名及指针定义运算符*,因此第1个标识下函数指针正确的定义为“typedefint(CMyClass::*FUNC)(int);”。
(2)函数指针数组本身是数组类型,因此在定义时如果没有初始化,就必须指定数组大小,在本题中因为指针数组包含的指针变量需要指向四种算数运算,因此定义指针数组大小为4,即第2个标识下应改为“FUNC func[4];”。
(3)func是指针数组,因此访问的时候需要有指针运算符“*”,第3个标识下应改成“return
(this->*func
)(j);”。
转载请注明原文地址:https://kaotiyun.com/show/qnAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
设有下列二叉树:对此二叉树前序遍历的结果为
有以下程序:#include<iostream>usingnamespacestd;classA{public:virtualvoidsetx(inti,int
在下面程序横线处填上适当内容,以使该程序执行结果为4.4。#include<iostream>usingnamespacestd;template<typenameT>Taverage(T*datA)
以下程序的输出结果为【】。#include<iostream>usingnamespacestd;voidinitialize(intprintNo,intstate=0);voidinitialize(in
软件测试的常用方法通常可分为白盒测试和【】。前者是根据程序的内部逻辑来设计测试用例,后者是根据软件的规格说明来设计测试用例。
若有以下程序:#include<iostream>usingnamespacestd;#definePI3.14classPoint{private:intx
以下程序运行后的输出结果是【】。#include<iostream>#include<string>usingnamespacestd;classY;classX{
下面程序的输出结果是【】。#include<iostream>usingnamespacestd;intx;voidfunA(int&,int);voidfunB(int,int&
有如下程序:#includeusingflamespacestd;className{charname[20];public:Name(){strcpy(name,“”);cout
已知函数FA调用FB,若要把这两个函数定义在同一个文件中,则
随机试题
食管炎与早期食管癌鉴别的主要方法是
一般在工程初期很难描述工作范围和性质,或工期紧迫,无法按常规编制招标文件招标时采用的成本加酬金合同形式是()。
事业单位当年经营收入扣除经营支出后的余额,无论是正数还是负数,均直接计入非财政补助结余分配。()
AuniquelaboratoryattheUniversityofChicagoisbusyonlyatnight.Itisadreamlaboratorywhereresearchersare【C1】______
慢性萎缩性胃窦炎主要与下列哪种致病菌感染有关
最可能的诊断为下列治疗方法哪项正确
生化汤组成为()
大城市乘客平均换乘系数不应大于()。
火灾自动报警系统中宜用于特级和一级保护对象的系统形式是()
[*]
最新回复
(
0
)