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

12.4 C++ 作业

完成沙发床的多继承

#include <iostream>using namespace std;//封装 沙发 类
class Sofa
{
private:string *sitting;
public://无参构造函数Sofa(){cout << "Sofa::无参构造函数" << endl;}//有参构造函数Sofa(string s):sitting(new string(s)){cout << "Sofa::有参构造函数" << endl;}//拷贝构造函数Sofa(const Sofa &other):sitting(new string(*(other.sitting))){cout << "Sofa::拷贝构造函数" << endl;}//拷贝赋值函数Sofa &operator=(const Sofa &other){if(this != &other){sitting = new string(*(other.sitting));}cout << "Sofa::拷贝赋值函数" << endl;return *this;}//析构函数~Sofa(){delete sitting;cout << "Sofa::析构函数" << endl;}void show(){cout << *sitting << endl;}
};//封装 床 类
class Bed
{
private:string sleep;
public://无参构造函数Bed(){cout << "Bed::无参构造函数" << endl;}//无参构造函数Bed(string sleep):sleep(sleep){cout << "Bed::有参构造函数" << endl;}//拷贝构造函数Bed(const Bed &other):sleep(other.sleep){cout << "Bed::拷贝构造函数" << endl;}//拷贝赋值函数Bed &operator=(const Bed &other){if(this != &other){sleep = other.sleep;}return *this;}//析构函数~Bed(){cout << "Bed::拷贝析构函数" << endl;}void show(){cout << sleep << endl;}
};
//封装 沙发床 类 共有继承于沙发和床
class Sofa_bed:public Sofa,public Bed
{
private:string *color;
public://无参构造函数Sofa_bed(){cout << "Sofa_bed::无参构造函数" << endl;}//有参构造函数Sofa_bed(string s,string sleep,string color):Sofa(s),Bed(sleep),color(new string(color)){cout << "Sofa_bed::有参构造函数" << endl;}//拷贝构造函数Sofa_bed(const Sofa_bed &other):Sofa(other),Bed(other),color(new string(*(other.color))){cout << "Sofa_bed::拷贝构造函数" << endl;}//拷贝赋值函数Sofa_bed &operator=(const Sofa_bed &other){if(this != &other){Sofa::operator=(other);Bed::operator=(other);color = new string(*(other.color));}cout << "Sofa_bed::拷贝赋值函数" << endl;return  *this;}//析构函数~Sofa_bed(){delete color;}void show(){Sofa::show();Bed::show();cout << *color << endl;}
};
int main()
{Sofa_bed sd;Sofa_bed sd1("可坐", "可睡", "blud");sd1.show();Sofa_bed sd2(sd1);sd2.show();sd = sd1;sd.show();return 0;
}

相关文章:

12.4 C++ 作业

完成沙发床的多继承 #include <iostream>using namespace std;//封装 沙发 类 class Sofa { private:string *sitting; public://无参构造函数Sofa(){cout << "Sofa::无参构造函数" << endl;}//有参构造函数Sofa(string s):sitting(new string(s)…...

基于ssm品牌会员在线商城源码

基于ssm品牌会员在线商城源码708 idea mysql数据库 navcat 开发技术&#xff1a;后端 ssm 后台管理 vue 用户端 vue.jshtml 演示视频&#xff1a; 基于ssm品牌会员在线商城源码 DROP TABLE IF EXISTS address; /*!40101 SET saved_cs_client character_set_client */; /…...

骨传导耳机音量大了有害吗?骨传导能保护听力吗?

无论是传统耳机还是骨传导耳机&#xff0c;只要使用音量过大&#xff0c;都会对有一定的损伤&#xff0c;然而由于骨传导耳机的传声原理和佩戴方式比较特殊&#xff0c;所以对人体的损伤比较小&#xff0c;想要知道骨传导耳机能否保护听力&#xff0c;就要先了解骨传导耳机的传…...

百望云供应链协同解决方案入选北大创新评论产业研究案例库

11月28日-29日&#xff0c;百望云受邀出席《北大创新评论》2023 Inno China 中国产业创新大会&#xff0c;从战略构建、生态塑造、科技创新等议题出发&#xff0c;与学术专家、产业专家、企业代表共赴盛会&#xff0c;思享汇聚。会上&#xff0c;《北大创新评论产业研究案例库&…...

selenium中元素定位正确但是操作失败,6种解决办法全搞定

selenium中元素定位正确但是操作失败的原因无外乎以下4种&#xff1a; 01 页面没加载好 解决方法&#xff1a;添加等待方法&#xff0c;如&#xff1a;time.sleep() 02 页面提交需要等待给数据后台 解决方法&#xff1a;添加等待方法&#xff0c;如&#xff1a;time.sleep(…...

触控板绘画工具Inklet mac功能介绍

Inklet mac是一款触控板绘画工具&#xff0c;把你的触控板变成画画的板子&#xff0c;意思是&#xff0c;你点在触控板的哪里&#xff0c;鼠标就会出现载相应的地方。例如&#xff0c;但你把手指移动到触控盘左下角&#xff0c;那么鼠标也会出现在左下角&#xff0c;对于用户而…...

〔005〕虚幻 UE5 像素流多用户部署

✨ 目录 ▷ 为什么要部署多用户▷ 开启分发服务器▷ 配置启动多个信令服务器▷ 配置启动客户端▷ 多用户启动整体流程和预览▷ 注意事项 ▷ 为什么要部署多用户 之前的像素流部署&#xff0c;属于单用户&#xff0c;是有很大的弊端的打开多个窗口访问&#xff0c;可以看到当一…...

11. 哈希冲突

上一节提到&#xff0c;通常情况下哈希函数的输入空间远大于输出空间&#xff0c;因此理论上哈希冲突是不可避免的。比如&#xff0c;输入空间为全体整数&#xff0c;输出空间为数组容量大小&#xff0c;则必然有多个整数映射至同一桶索引。 哈希冲突会导致查询结果错误&#…...

12.04 二叉树中等题

513. 找树左下角的值 给定一个二叉树的 根节点 root&#xff0c;请找出该二叉树的 最底层 最左边 节点的值。 假设二叉树中至少有一个节点。 示例 1: 输入: root [2,1,3] 输出: 1 思路&#xff1a;找到最低层中最左侧的节点值&#xff0c;比较适合层序遍历&#xff0c;返回最…...

Redis的安装

本文采用原生的方式安装Redis&#xff0c;Redis的版本为5.0.5 安装 下载 下载网站&#xff1a;https://download.redis.io/releases/ wget http://download.redis.io/releases/redis-5.0.5.tar.gz解压 tar -zxvf redis-5.0.5.tar.gz进入redis目录 cd redis-5.0.5执行编译…...

JDK安装太麻烦?一篇文章搞定

JDK是 Java 语言的软件开发工具包&#xff0c;主要用于移动设备、嵌入式设备上的java应用程序。JDK是整个java开发的核心&#xff0c;它包含了JAVA的运行环境&#xff08;JVMJava系统类库&#xff09;和JAVA工具。 JDK包含的基本组件包括&#xff1a; javac – 编译器&#xf…...

漫谈HBuilderX App-Jenkins热更新构建

漫谈Uniapp App热更新包-Jenkins CI/CD打包工具链的搭建 零、写在前面 HBuilderX是DCloud旗下的IDE产品&#xff0c;目前只提供了Windows和Mac版本使用。本项目组在开发阶段经常需要向测试环境提交热更新包&#xff0c;使用Jenkins进行CD是非常有必要的一步。尽管HBuilderX提…...

技术前沿丨Teranode如何实现无限扩容

​​发表时间&#xff1a;2023年9月15日 BSV区块链协会的技术团队目前正在努力开发Teranode&#xff0c;这是一款比特币节点软件&#xff0c;其最终目标是实现比特币的无限扩容。然而&#xff0c;正如BSV区块链协会网络基础设施负责人Jake Jones在2023年6月举行的伦敦区块链大会…...

世岩清上:如何制作年终工作汇报宣传片

年终工作汇报宣传片是一种以视觉和口头语言为主要表现形式的宣传手段&#xff0c;旨在向领导、同事、客户等展示一年来的工作成果和亮点。以下是制作年终工作汇报宣传片的几个关键步骤&#xff1a; 明确目的和受众&#xff1a;在制作宣传片前&#xff0c;要明确宣传片的目的和受…...

练习十一:简单卷积器的设计

简单卷积器的设计 1&#xff0c;任务目的&#xff1a;2&#xff0c;明确设计任务2.1,目前这部分代码两个文件没找到&#xff0c;见第5、6节&#xff0c;待解决中。 &#xff0c;卷积器的设计&#xff0c;RTL&#xff1a;con1.v4&#xff0c;前仿真和后仿真&#xff0c;测试信号…...

外包干了4年,技术退步太明显了。。。。。

先说一下自己的情况&#xff0c;本科生生&#xff0c;18年通过校招进入武汉某软件公司&#xff0c;干了接近4年的功能测试&#xff0c;今年国庆&#xff0c;感觉自己不能够在这样下去了&#xff0c;长时间呆在一个舒适的环境会让一个人堕落!而我已经在一个企业干了四年的功能测…...

微服务实战系列之EhCache

前言 书接前文&#xff0c;继续深耕。上一篇博主对Redis进行了入门级介绍&#xff0c;大体知道了Redis可以干什么以及怎么使用它。 今日博主继续带着大家学习如何使用EhCache&#xff0c;这是一款基于Java的缓存框架。 微服务实战系列之Redis微服务实战系列之Cache微服务实战…...

SpringBoot:SpringMVC(上)

文章目录 前言一、SpringMVC是什么&#xff1f;1.1 MVC的定义&#xff1a;1.2 MVC 和 Spring MVC 的关系 二、Spring MVC 创建和连接2.1创建springmvc2.2接下来&#xff0c;创建⼀个 UserController 类&#xff0c;实现⽤户到 Spring 程序的互联互通&#xff0c;具体实现代码如…...

一文搞懂Go语言中包导入

一文搞懂Go语言中包导入 定义包 在go语言中&#xff0c;定义包的关键字为package&#xff0c;如package main等&#xff0c;在go语言中有一个约定俗成的标准&#xff0c;那就是包名与目录名把持一致。 //service目录下 package servicepackage utils 可以看到&#xff0c;我…...

Vue2学习笔记(事件处理)

一、基本使用 1.使用v-on:xxx 或 xxx 绑定事件&#xff0c;其中xxx是事件名&#xff1b;2.事件的回调需要配置在methods对象中&#xff0c;最终会在vm上&#xff1b;3.methods中配置的函数&#xff0c;不要用箭头函数&#xff01;否则this就不是vm了&#xff1b;4.methods中配…...

FastAPI 2.0 AI流式响应性能瓶颈分析与突破方案(源码级内存泄漏定位实录)

第一章&#xff1a;FastAPI 2.0 AI流式响应性能瓶颈分析与突破方案&#xff08;源码级内存泄漏定位实录&#xff09;在高并发AI推理服务场景下&#xff0c;FastAPI 2.0 的 StreamingResponse 在持续返回大模型 token 流时&#xff0c;常出现 RSS 内存持续增长、GC 延迟升高、最…...

Eye-in-Hand还是Eye-to-Hand?深入解读OpenCV手眼标定背后的四种经典算法(Tsai, Park, Horaud)

Eye-in-Hand还是Eye-to-Hand&#xff1f;深入解读OpenCV手眼标定背后的四种经典算法 在工业机器人视觉引导系统中&#xff0c;相机与机械臂的精确标定直接决定了整个系统的定位精度。当工程师第一次调用OpenCV的calibrateHandEye()函数时&#xff0c;面对CALIB_HAND_EYE_TSAI、…...

告别手动更新!GAMIT/GLOBK数据处理中tables表文件的自动化管理与避坑指南

告别手动更新&#xff01;GAMIT/GLOBK数据处理中tables表文件的自动化管理与避坑指南 在GNSS数据处理领域&#xff0c;GAMIT/GLOBK作为科研和工程项目的核心工具链&#xff0c;其精度和可靠性高度依赖于各类表文件的及时更新。然而&#xff0c;许多中高级用户在实际操作中常陷…...

实战UNet++:基于segmentation_models_pytorch的医学图像分割全流程解析

1. 医学图像分割与UNet的核心价值 医学图像分割是计算机视觉在医疗领域最重要的应用之一。与自然图像不同&#xff0c;CT、MRI等医学影像具有灰度范围窄、组织边界模糊、噪声干扰大等特点。传统方法需要医生手动勾画病灶区域&#xff0c;一张高清CT可能需要数小时&#xff0c;而…...

为什么你的STM32F103工程编译失败?可能是启动文件没选对!

为什么你的STM32F103工程编译失败&#xff1f;可能是启动文件没选对&#xff01; 在嵌入式开发领域&#xff0c;STM32系列微控制器因其出色的性能和丰富的外设资源而广受欢迎。然而&#xff0c;即使是经验丰富的开发者&#xff0c;在STM32F103项目开发过程中也难免会遇到各种编…...

SAP资产会计数据迁移:除了AS91,你还需要检查这些关键配置(传输日期、抵销科目详解)

SAP资产会计数据迁移&#xff1a;AS91之外的7个关键配置陷阱与解决方案 当你在凌晨三点盯着屏幕上不平的资产折旧凭证时&#xff0c;AS91的简单操作指南显然已经不够用了。作为经历过数十个SAP上线项目的顾问&#xff0c;我发现90%的资产数据迁移问题都源于那些容易被忽略的后台…...

17:L关注AI伦理:蓝队的道德防御

作者&#xff1a; HOS(安全风信子) 日期&#xff1a; 2026-03-17 主要来源平台&#xff1a; GitHub 摘要&#xff1a; 当基拉开始利用AI的伦理漏洞时&#xff0c;传统的安全防御已无法应对。L将AI伦理原则融入安全防御&#xff0c;构建符合道德规范的安全体系。本文拆解L如何在…...

分支限界法 vs 回溯法:5个关键区别和实际应用场景对比

分支限界法与回溯法&#xff1a;核心差异与工程实践指南 在解决复杂组合优化问题时&#xff0c;算法选择往往决定了程序的执行效率。当面对NP难问题时&#xff0c;两种经典算法——分支限界法和回溯法——常被开发者拿来比较。本文将深入剖析这两种算法的本质区别&#xff0c;并…...

Windows下OpenClaw安装指南:对接ollama GLM-4.7-Flash模型

Windows下OpenClaw安装指南&#xff1a;对接ollama GLM-4.7-Flash模型 1. 为什么选择OpenClaw GLM-4.7-Flash组合 作为一个长期在Windows环境下折腾AI工具的开发者&#xff0c;我一直在寻找一个既能保持本地数据隐私&#xff0c;又能灵活对接各类开源模型的自动化框架。Open…...

Chainlit前端定制化|通义千问1.5-1.8B-GPTQ-Int4私有化部署与UI二次开发教程

Chainlit前端定制化&#xff5c;通义千问1.5-1.8B-GPTQ-Int4私有化部署与UI二次开发教程 你是不是已经体验过各种在线大模型&#xff0c;但总感觉有些限制&#xff1f;比如数据隐私的担忧、网络延迟的困扰&#xff0c;或者想打造一个完全属于自己的、界面更符合业务需求的AI助…...