实现一个图形类(Shape),包含受保护成员属性:周长、面积,
公共成员函数:特殊成员函数书写
定义一个圆形类(Circle),继承自图形类,包含私有属性:半径
公共成员函数:特殊成员函数、以及获取周长、获取面积函数
定义一个矩形类(Rect),继承自图形类,包含私有属性:长度、宽度
公共成员函数:特殊成员函数、以及获取周长、获取面积函数
在主函数中,分别实例化圆形类对象以及矩形类对象,并测试相关的成员函数。
代码:
- #include
- using namespace std;
- //定义一个图形类
- class Shape
- {
- protected:
- double peri;
- double area;
- public:
- //无参构造函数
- Shape(){cout<<"无参构造"<
- //有参构造函数
- Shape(double l,double s):peri(l),area(s) {cout<<"有参构造"<
- //析构函数
- ~Shape(){cout<<"析构函数"<
- //输出周长和面积
- };
- //定义一个圆形类
- class Circle:public Shape
- {
- private:
- double rad;
- public:
- //无参构造函数
- Circle() {cout<<"Circle::无参构造"<
- //有参构造函数
- Circle(int r):rad(r)
- {
- cout<<"有参构造"<
- }
-
- //获取圆形周长
- bool Circle_peri()
- {
- peri=2*3.14*rad;
- if(peri>0)
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- //获取圆形面积
- bool Circle_area()
- {
- area=3.14*rad*rad;
- if(area>0)
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- //输出周长和面积
- void show()
- {
- Circle_peri();
- Circle_area();
- cout<<"周长="<
- cout<<"面积="<
- }
- };
- //定义一个矩形类
- class Rect:public Shape
- {
- private:
- double length;
- double width;
- public:
- //无参构造函数
- Rect() {cout<<" Rect::无参构造"<
- //有参构造函数
- Rect(double a,double b):length(a),width(b)
- {
- cout<<"有参构造"<
- }
- //获取矩形周长
- bool Rect_peri()
- {
- peri= length*2+width*2;
- if(peri>0)
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- //获取矩形面积
- bool Rect_area()
- {
- area=length*width;
- if(area>0)
- {
- return true;
- }
- else
- {
- return false;
- }
- }
- //输出周长和面积
- void show()
- {
- Rect_peri();
- Rect_area();
- cout<<"周长="<
- cout<<"面积="<
- }
- };
-
- int main()
- {
- Circle c1(3);
- c1.show();
- Rect r1(3,4);
- r1.show();
- return 0;
- }
运行结果:


-
相关阅读:
gopsutil 获取服务端资源信息
标签类目体系(面向业务的数据资产设计方法论)-读书笔记5
【Linux】屏蔽项目服务非正常日志输出到message文件中
Filter和ThreadLocal结合存储用户id信息
代码随想录算法训练营第十七天 | LeetCode 110. 平衡二叉树、257. 二叉树的所有路径、404. 左叶子之和
线程(下):读写者模型\环形队列\线程池
systemverilog的timescale作用域
机器学习总结(三)——梯度下降详解
基于jsp+mysql+Spring+mybatis的SSM学生兼职网站
开源?Highcharts JS 10.3.2 | Highcharts Javascript
-
原文地址:https://blog.csdn.net/cwj442257772/article/details/132839842