首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: 10 6 30 2 2 注意:错误的语句在//******error******的下面,修改该语句即可。 #include<iostre
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: 10 6 30 2 2 注意:错误的语句在//******error******的下面,修改该语句即可。 #include<iostre
admin
2016-10-28
38
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
10
6
30
2
2
注意:错误的语句在//******error******的下面,修改该语句即可。
#include<iostream.h>
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 CaliFunction(int i,int j)
{
//******error******
return(func
)(j);
}
};
void main()
{
CMyClass myobj;
cout<<myobj.CallFunction(0,10)<<endl;
cout<<myobj.CallFunction(1,4)<<endl;
cout<<myobj.CallFunction(2,5)<<endl;
cout<<myobj.CallFunction(3,15)<<endl;
cout<<myobj.CallFunction(3,0)<<endl;
}
选项
答案
(1)typedef int(CMyClass::*FUNC)(int); (2)FUNC func[4]; (3)return(this->*func[i])(j);
解析
(1)在类中定义函数指针须指定类名及指针定义运算符*,因此第1个标识下函数指针正确的定义为“typedef int (CMyClass::*FUNC)(int);”。
(2)函数指针数组本身是数组类型,因此在定义时如果没有初始化,就必须指定数组大小,在本题中因为指针数组包含的指针变量需要指向四种算数运算,因此定义指针数组大小为4,即第2个标识下应改为“FUNC func[4];”。
(3)func是指针数组,因此访问的时候需要有指针运算符“*”,第3个标识下应改成“return(this->func
)(j);”。
转载请注明原文地址:https://kaotiyun.com/show/YKNp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
下列程序段的输出结果是#include<iostream.h>voidfun(int*x,int*y){cout<<*x<<*y;*x=3;*y=4;
以下类定义中可能会引起错误的语句是classA{public:~A(){}//1inti;//2private:
下列对派生类的描述中,错误的是
下列类的定义中,有()处语法错误。classBase {public:Base(){}Base(inti){data=i;
若类A和类B的定义如下;classA{inti,j;public:intgeti(){returni;}};clasSB:publ
下列运算符中,在C++语言中不能重载的是
【】是从二维表列的方向进行的运算。
如果友元函数重载一个运算符时,其参数表中没有任何参数则说明该运算符是
以下各选项组中,均是C++语言关键字的组是
数据流程图(DFD图)是()。
随机试题
胃肠道最常见的间叶性肿瘤是
手少阴心经的合穴是
自动弯沉仪测试路面弯沉方法要求当路面横坡超过()时,应进行弯沉值的横坡修正。
写字楼的租金水平主要取决于当地房地产市场的状况。()
某工业企业,从业人员280人,资产总额为4800万元,2019年度相关生产经营业务如下:(1)当年销售产品不含税收入700万元,对外提供培训不含税收入120万元。国债利息收入250万元、取得对境内居民企业的投资收益220万元。(2)全年产品销售成本为
银行的负债分为()。
按生产要素分配是指按照资本、土地、劳动等要素在生产过程中的贡献进行分配的一种方式。这种分配方式()。
我国法律规定.债权人领取提存物的权利,自标的物被提存之日起5年内不行使而消灭。该5年的期间属于()。
东北易帜
信号检测论中,随着判断标准的提高,虚报率会()。
最新回复
(
0
)