网友您好, 请在下方输入框内输入要搜索的题目:
使用VC6打开考生文件夹下的工程test36_3。此工程包含一个test36_3.cpp,其中定义了类CRectangle,但该类的定义并不完整。请按要求完成下列操作,将程序补充完整。
(1)定义类CRectangle的数据成员width和height,它们都是int型的数据。请在注释“//**1**”之后添加适当的语句。
(2)添加类CRectangle的友元函数duplicate()的声明,其返回值类型和参数类型均为Crectangle的,请在注释“//**2**”之后添加适当的语句。
(3)完成类Crectangle的成员函数set_values的定义,把传入的参数a和b分别赋值为数据成员width和height,请在注释“//**3**”之后添加适当的语句。
(4)完成派生类Crectangle的友元函数duplicate的定义,把函数中的临时对象rectres的值返回主函数,请在注释“//** 4**”之后添加适当的语句。
注意:除在指定位置添加语句之外,请不要改动程序中的其他内容。
源程序文件test36_3.cpp清单如下:
include <iostream.h>
class CRectangle
{
// ** 1 **
public:
void set_values (int, int);
int area (void) {return (width * height);}
// ** 2 **
};
void CRectangle::set_values (int a, int b)
{
// ** 3 **
}
CRectangle duplicate (CRectangle rectparam)
{
CRectangle rectres;
rectres.width = rectparam.width*2;
rectres.height = rectparam.height*2;
// ** 4 **
}
void main ( )
{
CRectangle rect, rectb;
rect.set_values (2,3);
rectb - duplicate (rect);
cout << rectb.area()<<end1;
}
参考答案