首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: numbor1=a numher2=a numbcr1=a number2_b 注意:错误的语句
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为: numbor1=a numher2=a numbcr1=a number2_b 注意:错误的语句
admin
2019-01-19
32
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,但该程序运行时有错,请改正程序中的错误,使程序输出的结果为:
numbor1=a
numher2=a
numbcr1=a
number2_b
注意:错误的语句在//******error******的下面,修改该语句即可。
1 #include<iostream.h>
2 class CMyClass
3 {
4 public:
5 //******error******
6 friend void SetValue(CMyClass obj,char c)
7 {
8 obj.number1=c;
9 obj.number2=c;
10 }
11 //******error******
12 void SetValue(CMyClass obj,char c1,char c2)
13 {
14 obj.number1=c1;
15 obj.number2=c2;
16 }
17 void display()
18 {
19 cout<<’’number1=’’<<number1<<end1;
20 cout<<’’number2=’’<<number2<<end1;
21 }
22 private:
23 char number1,number2;
24 };
25 void main()
26 {
27 CMyClass t;
28 SetValue(t,’a’);
29 t.display();
30 //******error******
31 t.SetValue(&t,’a’,’b’);
32 t.display();
33 }
选项
答案
(1)friend void SetValue(CMyClass&obj,char c) (2)void SetValue(CMyClass&obj,char c1,char c2) (3)t.SetValue(t,’a’,’b’);
解析
程序中定义了类CMyClass,含有两个成员变量char型变量number1和number2,友元SetValue()函数,成员函数SetValue()和display()数,SetValue()函数可改变number1和number2的值,display()函数在屏幕上打印number1和number2的值。
(1)根据程序的输出结果,函数SetValue(t,’a’)执行后,输出number1和number2的值均为a,在SetValue(t,’a’)执行中改变了对象t的成员number1和number2的值,故SetValue(t,’a’)的第_个参数传递的是引用,因此第1个标识下应改为“friendvoid SetValue(CMyClass&obj,char c)”。
(2)主函数中t.SetValue(t,’a’,’b’)后调用t的display()函数,在屏幕上打印,“numberl=a number2=b”,可知在SetValue(CMyClass obj,char c1,char c2)中改变了对象t的成员number1和number2的值,因此第一个参数传递为引用方式,故第2个标识下应改为“voidSetValue(CMyClass& obj,char c1,char c2)”。
(3)由2可知,第3个标识下是调用函数SetValue(CMyClass& obj,char c1,char c2)函数,函数的第_个参数为引用,直接使用变量名即可,因此第3标识下的引用使用错误,应改为“t.SetValue(t,’a’,’b’);”。
转载请注明原文地址:https://kaotiyun.com/show/rgAp777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
一个C++程序由函数A(),B(),C()和函数P()构成,在函数A()中分别调用了函数B()和函数C(),在函数B()中调用了函数A(),且在函数P()中也调用了函数A(),则可以说
在数据库设计中,将E-R图转换为关系模式的过程属于()。
下列程序的执行结果是()。#include<iostream.h>classSample{intx,y;public:Sample(){x=y=0;)Sample(inta,intb)
请定义一个函数名为A,返回值为int,没有参数的纯虚函数的定义是______。
若某二叉树的前序遍历访问顺序是abdgcefh,中序遍历访问顺序是dgbaechf,则其后序遍历的节点访问顺序是
在C++语言中,访问一个对象的成员所用的运算符是______,访问一个指针所指向的对象的成员所用的运算符是______。
已知有定义:constintD=5;inti=1;doublef=0.32;charc=15;则下列选项错误的是
关系模型允许定义3类数据约束,下列不属于数据约束的是
磁盘文件操作中,打开磁盘文件的访问方式中以追加方式打开文件的
给定一个关键字序列(24,19,32,43,38,6,13,22),进行快速排序,扫描一趟后的结果是______。
随机试题
男,47岁。因腹痛进行性加重4小时,于急诊诊断为“重症急性胰腺炎”。入院后给予禁食、补液及抗感染治疗。2天后患者逐渐感觉气短。查体:T38.3℃,R31次/分,BP110/75mmHg。双肺呼吸音清晰,心率96次/分,P2<A2,未闻及杂音及附加音。腹部压
X线片显示股骨头“新月征”,股骨头外形无明显变化。临床诊断属于股骨头缺血坏死的
高血压早期病理变化主要是
下列关于期限的说法正确的是:()
某陆地生态系统中,除分解者外,仅有甲、乙、丙、丁、戊5个种群,调查得知,该生态系统有4个营养级.营养级之间的能量传递效率为10%-20%,且每个种群只处于一个营养级。一年内输入各种群的能量数值如下表所示,表中能量数值的单位相同。问题:
对于学习习惯的建立,以下哪几种说法是不正确的?()
下列属于第四学段(7—9年级)课外阅读总量的一项是()。
指导建设社会主义中国基本政治制度的是毛泽东的()。
曲线x=a(cost+tsint),y=a(sint一tcost)(0≤t≤2π)的长度L=______.
二叉排序树的平均检索长度与二分法检索的长度都是
最新回复
(
0
)