首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modil.epp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: 10 6 30 2 2 注意:错误的语句在//*****error******的下面,修改该语句即可。 #include cla
使用VC6打开考生文件夹下的源程序文件modil.epp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: 10 6 30 2 2 注意:错误的语句在//*****error******的下面,修改该语句即可。 #include cla
admin
2019-05-14
96
问题
使用VC6打开考生文件夹下的源程序文件modil.epp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
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/3E8p777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
以下程序的执行结果是()。#include<iostream.h>classTestClass2{public:TestClass2(){};TestClass2(inti,intj);
以下程序的输出的结果是()。#include<iostream.h>voidmain(){inti,k,a[10],p[3];k=5;for(i=0;i<9;i++)a[i]=i;for(
非成员函数应该声明为类______函数才能访问该类的私有成员。
有如下程序段:charC[20]="examination";C[4]=0;cout<<c<<endl;这个程序的输出结果是______。
以下程序的执行结果为()。#include<iostream.h>classSample{intn;public:Sample(inti){n=i;}operator++(){n++;}
执行语句:{cout<<setfill(’*’)<<setw(10)<<seffill(’#’)<<left<<123<<"0K"<<end1;return0;}后将输出()。
设有以下定义和程序:#include<iostream.h>classTestClass1{public:voidshow1(){cout<<"TestClass1"<<end1;}
分析下面程序,该程序的运行结果是()。#include<iostream.h>classTestClass{public;staticintm;TestClass(){m++;
下面程序的运行结果是()。#include<iostream.h>intx=5;intfan(inta){intc;c=x*a;returnc;}voidmain(
随机试题
讲授者以下列哪种姿势讲授发出的声音最好()
数据字典中主要有六类条目:数据元素、_______、数据流、数据存储、______和加工处理。
简述影响经皮吸收的生理因素。
某工厂为企业改制进行资产重组,委托估价机构将其划拨土地上建成的两幢房屋进行估价。该工厂的房屋所有权证上记载,该两幢房屋的用途均为工业。根据估价人员现场勘察的结果,该两幢房屋中一幢为厂房,另一幢原为厂房,后自行改为办公楼用于出租。回答下列问题:(5-8)
施工过程出现质量问题时,监理工程师应立即向施工单位发出(),要求其对质量问题进行补救处理。
以证券交易为中心,有组织机构和人员,有专门设施的交易市场是()。
甲、乙、丙、丁四人商量周末出游。甲说:乙去,我就肯定去;乙说:丙去我就不去;丙说:无论丁去不去,我都去;丁说:甲乙中至少有一人去,我就去。以下哪项推论可能是正确的?()
书法五大书体
以下程序的输出结果是______。#include<stdio.h>#defineFUDGE(y)2.84+y#definePR(a)printf("%d\n",(int)(a))#define
Thecompany’sfutureiscontingent_____theoutcomeofthetrial.
最新回复
(
0
)