填空题

使用VC6打开考生文件夹下的工程test41_1,此工程包含一个源程序文件test41_1.cpp,但该程序运行有问题,请改正函数中的错误,使该程序的输出结果为: 7 源程序文件test41_1.cpp清单如下: #include<iostream.h> class myclass { int a, b; public: /***************** found *****************/ int sum(myclass x); void set_ab(int i, int j); }: /**************** found ****************/ void myclass:set_ab(int i, int j) { a=i; b=j; } int sum (myclass x) { /***************** found ***************/ x.a+x.b; } void main ( ) { myclass n; n.set_ab (3, 4); cout <<sum(n)<<endl; }

【参考答案】

(1) 错误:int sum(myclass x); 正确:friend int sum(myclass x); (2)......

(↓↓↓ 点击下方‘点击查看答案’看完整答案 ↓↓↓)
热门 试题

问答题
使用VC6打开考生文件夹下的工程test41_3。此工程包含一个test41_3.cpp,其中定义了类Rectangle,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。(1)定义类Rectangle的私有数据成员left,top和fight,bottom,它们都是int型的数据。请在注释“ **1**”之后添加适当的语句。(2)添加类Rectangle的带四个int型参数1、t、r、b的构造函数的声明,并使这四个参数的默认值均为0,请在注释“ **2**”之后添加适当的语句。(3)添加类Rectangle的成员函数SetTop()参数为int型的t,作用为把t的值赋给类的数据成员top,添加类Rectangle的成员函数SetBottom()参数为int型的t,作用为把t的值赋给类的数据成员bottom,请在注释“ **3**”之后添加适当的语句。(4)完成派生类Rectangle的成员函数Show()的定义,使其以格式“right-bottom point is(right,bottom)”输出,请在注释“ **4**”之后添加适当的语句。源程序文件test41_3.cpp清单如下:#include <iostream.h>class Rectangle{ ** 1 **int right, bottom;public: ** 2 **~ Rectangle(){};void Assign(int 1, int t, int r, int b);void SetLeft(int t){left = t;}void SetRight(int t){right = t;} ** 3 **void SetBottom(int t){bottom = t;}void Show();};Rectangle::Rectangle(int 1, int t, int r, int b){left = 1; top = t;right = r; bottom = b;}void Rectangle::Assign(int 1, int t, int r, int b){left = 1; top = t;right = r; bottom = b;}void Rectangle::Show(){cout<< left-top point is ( <<left<< , <<top<< ) <<’ n’; ** 4 **}void main(){Rectangle rect;rect.Show();rect.Assign(100,200,300,400);rect.Show();}