关于#C++#的问题,如何解决?

问题遇到的现象和发生背景

C++。不明白该怎么在类Rectangle中去用函数进行计算并输出矩形坐标和面积。我该怎么做?

问题相关代码,请勿粘贴截图

#include
using namespace std;

class Point{
public:
//set
void setX(int x) { p_x = x; }
void setY(int y) { p_y = y; }
//get
int getX() { return p_x; }
int getY() { return p_y; }

private:
int p_x;
int p_y;
};
class Rectangle {
public:
//set
void setLD(Point l) { LD = l; }//LD是左下点,RU是右上点。
void setRU(Point r) { RU = r; }
//get
Point getLD() { return LD; }
Point getRU() { return RU; }

private:
Point LD;
Point RU;
};

运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

在类Rectangle中新增计算矩形面积函数如下:

// 计算矩形面积
int getArea() {
    // 打印四个点的坐标
    cout << "矩形坐标如下:" << endl;
    cout << "左下:" << LD.getX() << ", " << LD.getY() << endl;
    cout << "左上:" << LD.getX() << ", " << RU.getY() << endl;
    cout << "右下:" << RU.getX() << ", " << LD.getY() << endl;
    cout << "右上:" << RU.getX() << ", " << RU.getY() << endl;
    // 计算面积 右上的x - 左下的x 得到宽,左下的y - 右上的y 得到高。
    int area = (RU.getX() - LD.getX()) * (LD.getY() - RU.getY());
    return area;
}

在main函数中测试如下:

int main(int argc, const char * argv[]) {
    Point ld = Point();
    ld.setX(5);
    ld.setY(100);
    Point ru = Point();
    ru.setX(15);
    ru.setY(50);
    Rectangle r = Rectangle();
    r.setLD(ld);
    r.setRU(ru);
    int area = r.getArea();
    cout << "矩形面积为:" << area << endl;
    return 0;
}

希望可以帮你解决问题

void gets{
(getRU().getX()-getLD().getX())*(getRU().getY()-getLD().getY());
}

类Rectangle里的set方法参数列表是Point类型的,你可以在主函数先创建两个Point类对象并给属性赋值,然后创建两个Rectangle类对象,把前面的两个Point类对象当形参传入Rectangle类对象的set形参列表里,最后调用get方法得到坐标或者利用坐标相减得到长度进一步求面积都可以