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.mzph.cn/news/79149.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【Android知识笔记】UI体系(三)

View动画原理 当我们创建View动画时,一般使用类似如下代码: ScaleAnimation scaleAnimation = new ScaleAnimation(0,1,0,1); scaleAnimation.setDuration(3000); scaleAnimation.setFillAfter

Jest单元测试相关

官方文档&#xff1a;jest 中文文档 1、模拟某个函数&#xff0c;并返回指定的结果 使用Jest测试JavaScript(Mock篇) 有这样一个需求&#xff0c;mock掉Math.random方法&#xff08;0&#xff08;包括&#xff09;&#xff5e;1之间&#xff09;&#xff0c;使其返回指定的0…

华为Java工程师面试题

常见问题&#xff1a; 什么是Java虚拟机&#xff08;JVM&#xff09;&#xff1f;它与现实中的计算机有什么不同&#xff1f;Java中的基本数据类型有哪些&#xff1f;它们的范围是什么&#xff1f;什么是引用类型&#xff1f;Java中的引用类型有哪些&#xff1f;什么是对象&am…

PostgreSQL的主从复制方式

主从复制方式 PostgreSQL支持多种主从复制&#xff08;Master-Slave Replication&#xff09;方式&#xff0c;用于创建可靠的数据备份和故障容错解决方案。以下是几种常见的主从复制方式&#xff1a; 同步复制&#xff08;Synchronous Replication&#xff09;&#xff1a;在…

计算机网络TCP篇之流量控制

计算机网络TCP篇之流量控制 今天谈一谈我对于tcp流量控制的看法 在网络拓扑中如果发送方节点的发送速率大于接受方节点的接受速率&#xff0c;数据会不断在接受方的缓冲区累积&#xff0c;直到接受方的缓冲区满的时候&#xff0c;发送方继续发送数据&#xff0c;这时候接受方无…

Redis群集

目录 1、redis群集三种模式 2、Redis 主从复制 2.1 主从复制的作用 2.2 主从复制流程 2.3 搭建Redis 主从复制 3、Redis 哨兵模式 3.1 哨兵模式的作用 3.2 故障转移机制 3.3 主节点的选举 4、Redis 群集模式 4.1 集群的作用 4.2 Redis集群的数据分片 4.3 搭建Redis…

算法通关村18关 | 回溯模板如何解决分割回文串问题

1. 分割回文串 题目 LeetCode131 分割回文串&#xff0c;给你一个字符串s&#xff0c;请你将s分割成一些字串&#xff0c;使每个字串都是回文串&#xff0c;返回s所有可能的分割方案。 回文串是正着和反着读都是一样的字符串。 思路 知道回溯的模板&#xff0c;用回溯的角度思…

用python实现音乐下载

前言 本文背景 最近对音乐比较有需求&#xff0c;想着用自己学的python来实现一下下载需求&#xff0c; 真的是拿着锤子在满世界找钉子&#xff0c;**文末附全部代码**声明&#xff1a; 本文仅作技术交流&#xff0c;禁止用于其他非法途径本文2023年9月15日是可用的&#xff…

漫谈:C语言 值传递 函数参数 指针

C语言麻拐得很。 什么是变量&#xff1f;变量就是内存里面的一个东西&#xff0c;有值。 什么是“值传递”&#xff1f;C语言函数参数调用都是值传递&#xff0c;就是把变量的值给函数。 这里面一个大坑&#xff0c;就是函数参数究竟是什么&#xff1f;很多初学者对“值传递”、…

RUST 每日一省:全局变量

Rust中允许存在全局变量。它们一般有两种&#xff1a;常数和静态值。 常量 我们使用关键字 const 来创建常量。由于常量未使用关键字 let 声明&#xff0c;因此在创建它们时必须指定类型。常量只能进行简单赋值&#xff0c;并且没有固定的内存地址&#xff0c;无论它们在何处使…

Ubuntu 安装 Docker Engine

今天又装 docker 来着&#xff0c;看到英文官网上点来点去点进 Desktop 版本&#xff0c;而中文官网跳转安装网址有错误&#xff0c;所以写一下安装教程 ubuntu ubuntu 安装 docker engine 官网教程 更新apt包索引并安装包以允许apt通过 HTTPS 使用存储库&#xff1a; sudo …

2024字节跳动校招面试真题汇总及其解答(二)

1. 微服务的好处,划分原则 微服务是软件架构的一种模式,它将应用程序划分为一系列小型、独立的服务。每个服务都提供一个单独的功能,并使用轻量级的接口相互通信。 微服务架构具有以下好处: 灵活性:微服务可以独立部署、扩展和更新,这使得它们能够随着业务需求的变化而…

AI Studio星河社区生产力实践:基于文心一言快速搭建知识库问答

还在寻找基于文心一言搭建本地知识库问答的方案吗&#xff1f;AI Studio星河社区带你实战演练&#xff08;支持私有化部署&#xff09;&#xff01; 相信对于大语言模型&#xff08;LLM&#xff09;有所涉猎的朋友&#xff0c;对于“老网红”知识库问答不会陌生。自从大模型爆…

树和二叉树

1、树的定义2、树的基本术语3、二叉树的定义4、二叉树的性质和存储结构5、满二叉树、完全二叉树**完全二叉树的性质** 6、二叉树的存储顺序存储结构链式存储结构 7、遍历二叉树演示8、二叉树相关算法&#xff08;1&#xff09;遍历二叉树递归算法实现&#xff08;2&#xff09;…

【LeetCode-简单题】26. 删除有序数组中的重复项

文章目录 题目方法一&#xff1a;快慢指针 题目 方法一&#xff1a;快慢指针 class Solution { //快慢指针public int removeDuplicates(int[] nums) {int fast 1;int slow 0;while(fast < nums.length){if(nums[fast] nums[fast-1]) fast;//若当前元素和之前元素相同 则…

什么是卷积002

文章目录 前言1.卷积网络和传统网络区别2.卷积神经网络整体架构1.输入层2. 卷积层3.池化层4.全连接层 5.神经网络6.经典网络1.Alexnet2. Vgg3.Resnet 残差网络-特征提取 7.感受野 前言 大纲目录 首先链接图像颜色通道 1.卷积网络和传统网络区别 右边的就是CNN&#xff0c;卷…

线扫相机——机器视觉中无限制物体的检测(重要转载)

在机器视觉中&#xff0c;在检测连续物体或者滚动物体时&#xff0c;线扫相机是最佳的解决方案。通常&#xff0c;它们能提供很高的分辨率&#xff0c;因为它们要求很高的速度和数据率。 一、多条窄带拼成一副图像 线扫相机只抓取一行作为图像发送到电脑&#xff0c;主机电脑…

[NLP]LLM---大模型指令微调中的“Prompt”

一 指令微调数据集形式太多 大家有没有分析过 prompt对模型训练或者推理的影响&#xff1f;之前推理的时候&#xff0c;发现不加训练的时候prompt&#xff0c;直接输入模型性能会变差的&#xff0c;这个倒是可以理解。假如不加prompt直接训练&#xff0c;是不是测试的时候不加…

go-carbon 2.2.7 版本发布, 轻量级、语义化、对开发者友好的Golang时间处理库

carbon 是一个轻量级、语义化、对开发者友好的 golang 时间处理库&#xff0c;支持链式调用。 目前已被 awesome-go 收录&#xff0c;如果您觉得不错&#xff0c;请给个 star 吧 github.com/golang-module/carbon gitee.com/golang-module/carbon 安装使用 Golang 版本大于…

将 Google Kubernetes Engine (GKE) 上稳定扩散的启动时间缩短 4 倍

Cloud Ace 是 Google Cloud 全球战略合作伙伴&#xff0c;在亚太地区、欧洲、南北美洲和非洲拥有二十多个办公室。Cloud Ace 在谷歌专业领域认证及专业知识目前排名全球第一位&#xff0c;并连续多次获得 Google Cloud 各类奖项。作为谷歌云托管服务商&#xff0c;我们提供谷歌…