用c++,在线等急,谢谢 定义一个矩形类Rectangle,矩形的左上角(L
用c++,在线等急,谢谢定义一个矩形类Rectangle,矩形的左上角(L定义一个矩形类Rectangle,矩形的左上角(Left.Top)与右下角(Right.Bott...
用c++,在线等急,谢谢
定义一个矩形类Rectangle,矩形的左上角(L定义一个矩形类Rectangle,矩形的左上角(Left.Top)与右下角(Right.Bottom)坐标定义为保护数据成员,用公有成员函数Diagonal()计算矩形对角线的长度,公有成员函数Show()显示矩形左上角与右下角坐标及对角线长度。在主函数中用new运算符动态建立矩形对象r1,初值为(10,10,20,20)然后调用Show()显示矩形左上角与右上角坐标及对角线长度。最后用delete运算符回收为矩形动态分配的存储空间。 展开
定义一个矩形类Rectangle,矩形的左上角(L定义一个矩形类Rectangle,矩形的左上角(Left.Top)与右下角(Right.Bottom)坐标定义为保护数据成员,用公有成员函数Diagonal()计算矩形对角线的长度,公有成员函数Show()显示矩形左上角与右下角坐标及对角线长度。在主函数中用new运算符动态建立矩形对象r1,初值为(10,10,20,20)然后调用Show()显示矩形左上角与右上角坐标及对角线长度。最后用delete运算符回收为矩形动态分配的存储空间。 展开
1个回答
展开全部
#include <iostream>
#include <cmath>
using namespace std;
class Point_lt {
protected:
double _x;
double _y;
Point_lt ( double x=0.0, double y=0.0 ): _x(x), _y(y) {}
};
class Point_rb {
protected:
double _x;
double _y;
Point_rb ( double x=0.0, double y=0.0 ): _x(x), _y(y) {}
};
class Rectangle: public Point_lt, public Point_rb {
public:
Rectangle ( double x_lt, double y_lt, double x_rb, double y_rb )
: Point_lt( x_lt, y_lt ), Point_rb( x_rb, y_rb ) {}
void show() {
double diag = sqrt((Point_rb::_x - Point_lt::_x) * (Point_rb::_x - Point_lt::_x)
+ (Point_rb::_y - Point_lt::_y) * (Point_rb::_y - Point_lt::_y));
cout << "P_lt = [" << Point_lt::_x << "," << Point_lt::_y << "]\n";
cout << "P_rb = [" << Point_rb::_x << "," << Point_rb::_y << "]\n";
cout << "diagonals = " << diag << '\n';
}
};
int main(int argc, char *argv[]) {
Rectangle* square = new Rectangle( 10,10,20,20 );
square->show();
delete square;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询