当前位置: 首页 > news >正文

9.12 C++作业

实现一个图形类(Shape),包含受保护成员属性:周长、面积,

公共成员函数:特殊成员函数书写

定义一个圆形类(Circle),继承自图形类,包含私有属性:半径

公共成员函数:特殊成员函数、以及获取周长、获取面积函数

定义一个矩形类(Rect),继承自图形类,包含私有属性:长度、宽度

公共成员函数:特殊成员函数、以及获取周长、获取面积函数

在主函数中,分别实例化圆形类对象以及矩形类对象,并测试相关的成员函数。

#include <iostream>using 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<<"该圆的周长为"<<c<<endl;}//获取面积void get_s(double r){s = 2*r*r*3.14;cout<<"该圆的面积为"<<s<<endl;cout<<endl;}
};//定义一个矩形类
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*(h+w);cout<<"该矩形的周长为"<<c<<endl;}//获取面积void get_s(double h, double w){s = h*w;cout<<"该矩形的面积为"<<s<<endl;cout<<endl;}
};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;
}

http://www.lryc.cn/news/167088.html

相关文章:

  • 利用LinuxPTP进行时间同步(软/硬件时间戳) - 研一
  • 《极客时间:左耳听风——程序员练级攻略》【文章笔记个人思考】
  • Springboot 实践(15)spring config 配置与运用—自动刷新
  • FirmAFL
  • SpringMVC的整合完成CRUD(增删改查)
  • Postman使用_Tests Script(断言测试)
  • 问道管理:华为概念股捷荣技术13天10板,监管质疑迎合热点炒作
  • VR云游:让游客足不出户享受旅行的乐趣
  • vue3学习源码笔记(小白入门系列)------ 重点!响应式原理 代码逐行分析
  • 62、SpringBoot 使用RestTemplate 整合第三方 RESTful 服务
  • Linux基本认识
  • leetcode top 100 (8)无重复字符的最长子串(滑动窗口
  • 我也惊呆了!原来软件开发根本不需要会编码
  • 定制化图标——Element UI 组件图标替换指南
  • 63、SpringBoot---定制 RestTemplate--消息转化器、拦截器
  • 面试系列 - Redis持久化机制详解
  • Ceph入门到精通-存储集群ceph df 用量统计算法说明
  • 堡垒机的相关介绍
  • 无涯教程-JavaScript - INDIRECT函数
  • LiveNVR监控流媒体Onvif/RTSP功能-支持海康摄像头海康NVR通过EHOME协议ISUP协议接入分发视频流或是转GB28181
  • 一年一度的中秋节马上又要到了,给你的浏览器也来点氛围感吧
  • CentOS8安装mysql-community-client错误解决
  • 故障排除指南:解决 Kibana Discover 加载中的 6 个常见问题
  • 创建一个简单的外卖订餐系统
  • 《追逐胜利:编程之路上的三子棋游戏实践》
  • 身份和访问管理解决方案:混合型IAM
  • 微信小程序动态添加表单模块
  • HTML5+CSS3小实例:纯CSS实现彩虹倒映水面的唯美背景
  • Beautiful Soup简介
  • Springboot2.7集成websocket及相关问题