首页
外语
计算机
考研
公务员
职业资格
财经
工程
司法
医学
专升本
自考
实用职业技能
登录
计算机
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并且使程序输出的结果为: a=7,b=0 a=8,b=10 注意:错误的语句在//******error******的下面
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并且使程序输出的结果为: a=7,b=0 a=8,b=10 注意:错误的语句在//******error******的下面
admin
2018-10-23
29
问题
使用VC6打开考生文件夹下的源程序文件modi1.cpp,该程序运行时有错,请改正其中的错误,使程序正常运行,并且使程序输出的结果为:
a=7,b=0
a=8,b=10
注意:错误的语句在//******error******的下面,修改该语句即可。
1 #include<iostream.h>
2 class CObj
4 {
4 public:
5 //******error*******
6 friend void func(CObj&,int,int);
7 void display()
8 {
9 //******error******
10 cout<<’’a=’’<<a<¨,b=¨<<<<b<<end1;
11 }
12 private:
13 int a,b;
14 };
15void func(CObj& obj,int t)
16 {
17 obj.a=t;
18 obj.b=0;
19 }
20 void func(CObj& obj,int t,int j)
21 {
22 obj.a=t;
23 obj.b=j;
24 }
25 void main()
26 {
27 //******error******
28 CObj obj1
29 func(obj1,7);
30 obj1.display();
31 func(obj1,8,10);
32 obj1.display();
33 }
选项
答案
(1)添加语句:friend void func(CObj&,int); (2)cout<<’’a=’’<<a<<’’,b=’’<<b<<end1; (3)CObj obj1;
解析
程序中定义了类CObj,其有两个成员变量a和b,通过友元函数func()可改变a和b的值,display()成员函数显示a和b的值。
(1)标识1处是声明一个友元函数,友元函数是在类声明中由关键字Mend修饰的非成员函数,由friend void func(CObj&,int,int)可知,函数func()是CODj类的友元,由程序后面的具体实现可知该函数重载了,已经声明了友元函数friend void func(CObj&,int,int),另外一个友元函数func(CObj& obj,int t)没有声明,因此第1个标识下应添加“friend void func(CObj&,int);”。
(2)display()函数打印类成员变量a和b的值,cout流中的数据是用流插入运算符“<<”顺序加入的,因此“<<<<”不正确,第2个标识下应改为“cout<<’’a=’’<<a<<’’,b=’’<<b<<end1;”。
(3)标识3处是声明类对象,对象声明格式为:<类名><对象名>(<参数表>);,对象声明语句是一个完整的语句,应该以“;”结尾,因此第3个标识下应改为“CObj obj1;”。
转载请注明原文地址:https://kaotiyun.com/show/V5Ap777K
本试题收录于:
二级C题库NCRE全国计算机二级分类
0
二级C
NCRE全国计算机二级
相关试题推荐
若需要把一个函数"voidFuric();"定义为一个类Sample的友元函数,则应在类Sample的定义中加入一条语句______。
对于以下带参数的main()函数的第二形参,voidmain(intargc,______),不可能的形式是
设有语句intn,m;chara[5],b;cin>>n>>a>>m>>b;为了分别将10和20分别赋给n和m,look赋给a,t赋给b,则正确的输入为
已知语句intm=10;则下列引用的表示中正确的是
下列有关数据库的描述,正确的是
如果类中的一个成员函数的定义实现在类内,则该函数系统自动默认为该类的______函数。
在面向对象方法中,类之间共享属性和操作的机制称为______。
有以下程序:#include<iostream>usingnamespacestd;ClassA{public:A(){tout{("A"}};classB{public:B(){cout<<"
已知下列程序的输出结果是42,请将横线处缺失的部分补充完整。#include<iostream>usingnamespacestd;classFoo{intvalue;p
下列程序用于将源文件中的字母进行大小写转换,请填写while的请句。#include<iostream.h>#include<fstream.h>#include<iomanip.h>voidmain(){cha
随机试题
装用电动风扇的发动机,发动机冷却液温度高于规定数值时风扇不转,应检查_______是否良好。
定额中断路器的计量单位()。
在人身保险合同中,保险人按照约定对被保险人()给付保险金的责任。
垓下古战场景区可以分为哪些景区?()
福勒和布朗根据教师的需要和不同时期所关注的焦点问题,把教师成长划分为______、______和______三个阶段。
人民代表大会制度的核心内容和实质是()。
人和动物生命的最根本的区别就在于人能把自己作为控制的对象,而控制是开发智力潜力的关键。从这段话可知下述不正确的一项是( )。
汉朝法律儒家化的表现有()。
Theevidencesupportstheviewthatunderconditionswhichneedit,acryisawonderfulrestorative.
Britainisfacinga【C1】______riseinitsratpopulation【C2】______growingnumbersofpeopleleavefastfoodscrapsinthestreet,
最新回复
(
0
)