杭州专门做网站,百度竞价代运营,网站建设资金投入,交互设计专业国内大学排名实现一个图形类#xff08;Shape#xff09;#xff0c;包含受保护成员属性#xff1a;周长、面积#xff0c;
公共成员函数#xff1a;特殊成员函数书写
定义一个圆形类#xff08;Circle#xff09;#xff0c;继承自图形类#xff0c;包含私有属性#xff1a;半…实现一个图形类Shape包含受保护成员属性周长、面积
公共成员函数特殊成员函数书写
定义一个圆形类Circle继承自图形类包含私有属性半径
公共成员函数特殊成员函数、以及获取周长、获取面积函数
定义一个矩形类Rect继承自图形类包含私有属性长度、宽度
公共成员函数特殊成员函数、以及获取周长、获取面积函数
在主函数中分别实例化圆形类对象以及矩形类对象并测试相关的成员函数。
#include iostreamusing namespace std;class Shape
{
protected:double c; //周长double s; //面积public:Shape(){cout无参构造函数endl;}Shape(double c1, double s1):c(c1), s(s1){cout有参构造函数endl;}~Shape(){cout析构函数endl;}//拷贝构造Shape(const Shape other):c(other.c), s(other.s){cout拷贝构造endl;}};//定义一个圆形类
class Circle:public Shape
{
private:double r; //半径public:Circle(){cout无参构造函数endl;}Circle(double c1, double s1, double r1):Shape(c1, s1), r(r1){cout有参构造函数endl;}~Circle(){cout析构函数endl;}//拷贝构造Circle(const Circle other):Shape(other.c, other.s), r(other.r){cout拷贝构造endl;}//获取周长void get_c(double r){c 2*r*3.14;cout该圆的周长为cendl;}//获取面积void get_s(double r){s 2*r*r*3.14;cout该圆的面积为sendl;coutendl;}
};//定义一个矩形类
class Rect:public Shape
{
private:double h; //高double w; //宽public:Rect(){cout无参构造函数endl;}Rect(double c1, double s1, double h1, double w1):Shape(c1, s1), h(h1), w(w1){cout有参构造函数endl;}~Rect(){cout析构函数endl;}//拷贝构造Rect(const Rect other):Shape(other.c,other.s), h(other.h), w(other.w){cout拷贝构造endl;}//获取周长void get_c(double h,double w){c 2*(hw);cout该矩形的周长为cendl;}//获取面积void get_s(double h, double w){s h*w;cout该矩形的面积为sendl;coutendl;}
};int main()
{Circle a; //圆类对象a.get_c(5); //圆周长a.get_s(5); //圆面积Rect b; //矩形类对象b.get_c(4,5); //周长b.get_s(4,5); //面积return 0;
}