首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.zpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: number1=a number2=a number1=a number2=b 注意:错误的语句
使用VC6打开考生文件夹下的源程序文件modi1.zpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: number1=a number2=a number1=a number2=b 注意:错误的语句
admin
2017-03-22
54
问题
使用VC6打开考生文件夹下的源程序文件modi1.zpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
number1=a
number2=a
number1=a
number2=b
注意:错误的语句在//********error********的下面,修改该语句即可。
#include
class CMyClass
{
public:
//********error********
friend void SetValue(CMyClass
obj,char c)
{
obj.numberl=c;
obj.number2,=c;
}
//********error********
void SetValue(CMyClass obj,
char c1,char c2)
{
obj.numberl=c1;
obj.number2=c2;
}
void display()
{
cout<<"number1="<
<
cout<<"number2="<
<
}
private:
char number1,number2;
};
Void main()
{
CMyClass t;
SetValue(t,’a’);
t.display();
//********error********
t.SetValue(&t,’a’,’b’);
t.display();
}
选项
答案
(1)friend void SetValue(CMyClass&obj,char c) (2)void SetValue(CMyClass&obj,charc1,char c2) (3)t.SetValue(t,’a’,’b’);
解析
(1)根据程序的输出结果,函数SetValue(t,’a’)执行后,输出number1和number2的值均为a,在SetValue(t,’a’)执行中改变了对象t的成员number1和number2的值,故SetValue(t,’a’)的第一个参数传递的是引用,因此第1个标识下应改为“friendvoid SetValue(CMyC lass&obj,char C)”。
(2)主函数中t.SetValue(t,’a’,’b’)后调用t的display()函数,在屏幕上打印,“number1=a number2=b”,可知在SetValue(CMyClass obj,char c1,char c2)中改变了对象t的成员numberl和number2的值,因此第一个参数传递为引用方式,故第2个标识下应改为“voidSetValue(CMyClass&obj,char c1,char c2)”。
(3)由2可知,第3个标识下是调用函数SetValue(CMyClass&oN,char c1,char c2)函数,函数的第一个参数为引用,直接使用变量名即可,因此第3标识下的引用使用错误,应改为“t.SetValue(t,’a’,’b’);”。
转载请注明原文地址:https://kaotiyun.com/show/inAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
设有下列二叉树:对此二叉树前序遍历的结果为
Jackson方法是一种面向【】的结构化方法。
若有以下程序#include<iostream>usingnamespacestd;classA{public:A(inti,intj){
函数定义为Fun(int&i),变量定义n=100.则下面调用正确的是
下面程序的结果是#include<iostream.h>classA{inta;public:A():a(1){}
假定int类型变量占用两个字节,其有定义intx[10]={0,2,4};,则数组x在内存中所占字节数是
有如下模板声明:templateclassA;下列声明中,与上述声明不等价的是
下列关于运算符函数的描述中,错误的是
有如下两个类定义:classAA{};classBB{AAv1,*v2;BBv3;int*v4;};其中有一个成员变量的定义是错误的,这个变量是
下面的函数定义是某函数模板能够生成的函数实例intsquare(intn)(returnn*n;)doublesquare(doublen)(retumn*n;)由此可知,该函数模板的定义是______。
随机试题
幼いころはどんなに嫌がっても、嫌いな野菜を残さず全部________ものだ。好き嫌いがなくなった今は母に感謝している。
设f(x,y)=ln(x+=_______.
下列各项中,不属于法定孳息的有()。A.租金B.牛奶C.利息D.股息
某公司下设A、B两个投资中心。A投资中心的平均经营资产为200万元,投资收益率为15%;B投资中心的投资收益率为17%,剩余收益为20万元。该公司要求的平均最低投资收益率为12%。现该公司决定追加平均经营资产100万元,若投向A投资中心,每年可增加息税前利
某市证券经纪人2018年1月取得不含增值税佣金31000元,该佣金对应缴纳了增值税930元、城建税65.1元,该经纪人当月应纳的个人所得税为()元。
人民警察内务建设的基本方针是( )。
Britain’sprivateschoolsareoneofitsmostsuccessfulexports.Thechildrenofthewealthy【C1】________tothem,whetherfromC
思考的人——2011年英译汉及详解Withitsthemethat"Mindisthemasterweaver,"creatingourinnercharacterandoutercircumstances,thebo
按照“后进先出”原则组织数据的数据结构是()。
Inoursociety,workisidentifiedwithajob;itisdoneforanemployerandformoney;unpaidactivitiesdonotcountaswork.
最新回复
(
0
)