点类派生矩形类和圆类

问题:
点类中:
私有数据成员int x 和 int y ,分别表示横坐标和纵坐标;
构造函数Point(),将x和y都初始化为0 ;
构造函数Point(int xx,int yy),将x和y分别初始化为xx和yy的值 ;
析构函数Point() ;
移动函数void Move(int xOff,int yOff), 将x沿横轴移动xOff个位置,将y沿纵轴移动yOff个位置 ;
写数据函数void Set(int xx,int yy),将x和y分别赋值为xx和yy的值 ;
输出函数void Display(), 以形式“Point(x,y)”输出点的信息 ;
矩形类公有继承点类:
增加了:
私有数据成员int w 和int h ,表示宽和高 ;
构造函数Rectangle(),将宽和高都初始化为0;(思考:将左下角顶点初始化为了哪个点?如何实现的)
构造函数Rectangle(int xx,int yy,int ww,int hh),将左下角顶点初始化为Point(xx,yy),将宽初始化为ww,将高初始化为hh ;
析构函数
Rectangle () ;
写数据函数void Set(int xx,int yy,int ww,int hh),将x和y分别赋值为xx和yy的值,将w和h分别赋值为ww和hh的值 ;
面积函数float Area(), 计算并返回矩形的面积 ;
周长函数float Circum(), 计算并返回矩形的周长 ;
输出函数void Display(), 以形式“Rectangle((x,y),w,h),面积,周长”输出矩形的信息 ;
圆类公有继承点类:
增加了:
私有数据成员int r ,表示半径 ;
构造函数Circle(),将半径初始化为0;(思考:将圆心初始化为了哪个点?如何实现的)
构造函数Circle(int xx,int yy,int rr),将圆心初始化为Pint(xx,yy),将半径初始化为rr ;
析构函数~Circle() ;
写数据函数void Set(int xx,int yy,int rr),将x和y分别赋值为xx和yy的值,将r赋值为rr的值 ;
面积函数float Area(), 计算并返回圆的面积 ;
周长函数float Circum(), 计算并返回圆的周长 ;
输出函数void Display(), 以形式“Circle((x,y),r),面积,周长”输出圆的信息 ;

main()函数中:
创建矩形R1: 左下角顶点(2,2),宽3,高4;
以形式“Rectangle((x,y),w,h),面积,周长”输出矩形R1的信息 ;
将R1向右移动3个单位,向上移动4个单位, 再次输出其所有的信息;
创建圆C1: 圆心(1,2),半径3;
以形式“Circle((x,y),r),面积,周长”输出圆C1的信息 ;

问题相关代码

类定义文件

#ifndef INC_1_POINT_H
#define INC_1_POINT_H
#include <iostream>
using namespace std;
class Point{
private:
    int x;
    int y;
public:
    Point();
    Point(int xx,int yy){
        x = xx;
        y = yy;
    }
    ~Point();
    static void Move(int xOff, int yOff);
    void Set(int xx,int yy);
    void Display();
};
class Rectangle :public Point{
private:
    int x,y;
    int w;
    int h;
public:
    Rectangle();
    Rectangle(int xx,int yy,int ww,int hh):Point(xx,yy),x(xx),y(yy),w(ww),h(hh){
        w = ww;
        h = hh;
    }
    ~Rectangle();
    void Set(int xx,int yy,int ww,int hh);
    float Area();
    float Circum();
    void Display();
};
class Circle:public Point{
private:
    int x,y;
    int r;
public:
    Circle(int r = 0);
    Circle(int xx,int yy,int rr):Point(xx,yy),x(xx),y(yy),r(rr){
        int r = rr;
    }
    ~Circle();
    void Set(int xx,int yy,int rr);
    float Area();
    float Circum();
    void Display();
};
#endif //INC_1_POINT_H

类实现文件

#include<iostream>
#include"Point.h"
using namespace std;
Point::Point(int xx = 0, int yy = 0);
Point::~Point();
void Point::Move(int xOff,int yOff){
    x += xOff;
    y += yOff;
}
void Point::Set(int xx,int yy){
}
void Point::Display(){
    cout<<"Point("<<x<<","<<y<<")"<<endl
}
Rectangle::Rectangle();
Rectangle::Rectangle(int xx,int yy,int ww,int hh);
Rectangle::~Rectangle();
void Rectangle::Set(int xx,int yy,int ww,int hh):Point(xx,yy){
}
float Rectangle::Area(){
    return w * h;
}
float Rectangle::Circum();
    return 2 * w + 2 * h;
void Rectangle::Display(){
    cout<<"Rectangle(("<<x<<","<<y<<"),"<<w<<","<<h<<"),"<<Area()<<","<<Circum()<<endl
}
Circle::Circle(int xx,int yy,int rr);
Circle::~Circle();
void Circle::Set(int xx,int yy,int rr);
float Circle::Area(){
    return 3.14 * r * r;
}
float Circle::Circum(){
    return 6.28 * r;
}
void Circle::Display(){
    cout<<"Circle(("<<x<<","<<y<<"),"<<r<<"),"<<Area()<<","<<Circum()<<endl
}

主函数

#include <iostream>
#include"Point.h"
int main() {
    Rectangle rec;
    rec.Set(2,2,3,4);
    Point::Move(3,4);
    rec.Display();
    Circle cir1,cir2;
    cir1.Set(1,2,3);
    Point::Move(3,4);
    cir1.Display();
}

请问我的代码有什么问题

派生类写错了,两个子类里面都不需要定义x,y,因为X y在point点类里面是存在的。