class Builing { private: int cengshu;//层数 int fangjianshu;//房间数 double total_area;//总平方米 public: //构造函数 Builing(int ceng = 0, int fangjian = 0, double area =0.0) :cengshu(ceng), fangjianshu(fangjian), total_area(area) { //检验合法性 if (cengshu < 0) { cengshu = 0; } if (fangjianshu < 0) { fangjianshu = 0; } if (total_area < 0) { total_area = 0; } } //获得属性 int getcengshu()const { return cengshu; } int getfangjianshu()const { return fangjianshu; } double gettotal_area()const { return total_area; } //设置属性 int setcengshu(int ceng) { if (cengshu >= 0) { cengshu = ceng; } } int setfangjianshu(int fangjian) { if (fangjianshu >=0 ) { fangjianshu = fangjian; } } int settotal_area(double area) { if (total_area >=0) { total_area = area; } } //显示信息 virtual void show()const { cout << "楼房信息 " << endl; cout << "层数" << cengshu << endl; cout << "房间数量" << fangjianshu << endl; cout << "总平方米" << total_area << "平方米" << endl; } }; class House :public Builing { private: int bedroom_count;//卧室数量 int bathroom_count;//浴室数量 public: //构造函数 House(int ceng = 0, int fangjian = 0, double area = 0.0, int bedroom = 0, int bathroom = 0) : Builing(ceng, fangjian, area), bedroom_count(bedroom), bathroom_count(bathroom) { //检验合理性 if (bedroom_count < 0) { bedroom_count = 0; } if (bathroom_count < 0) { bathroom_count = 0; } } //显示信息 void show()const { //因为show是虚函数 Builing::show(); cout << "住宅信息" << endl; cout << "卧室数量" << bedroom_count << endl; cout << "浴室数量" << bathroom_count << endl; } }; class Office :public Builing { private: int fire_extinguisher;//灭火器数量 int phone_count;//电话数量 public: Office(int ceng = 0, int fangjian = 0, double area = 0.0, int fire = 0, int phone = 0) : Builing(ceng, fangjian, area), fire_extinguisher(fire), phone_count(phone) { if (fire_extinguisher < 0) { fire_extinguisher = 0; } if (phone_count < 0) { phone_count = 0; } } //显示信息 void show()const { Builing::show(); cout << "办公室信息" << endl; cout << "灭火器数量" << fire_extinguisher << endl; cout << "电话数量" << phone_count << endl; } }; int main() { Builing* b1 = nullptr, * b2 = nullptr; House house(3, 8, 120, 2, 4); b1 = &house; Office office(3, 8, 120, 8, 4); b2 = &office; b1->show(); cout << endl; b2->show(); return 0; }建立普通的基类Building,用来存储一座楼房的层数、房间数以及它的总平方米数。建立派生类House,继承Building,并存储下面的内容:卧室与浴室的数量。另外,建立派生类Office,继承Bu
张小明
前端开发工程师
数字图像处理篇---图像合成
核心比喻:图像世界的“器官移植手术” 想象你有两张照片: A图: 一个人的完美笑脸(但背景很乱)。 B图: 一片美丽的海滩风光(但没人)。 图像合成的目标:把A图的笑脸&am…
Highcharts 配置说明
Highcharts 配置说明 Highcharts 是一款流行的图表库,能够创建各种图表类型,从柱状图到散点图,从折线图到雷达图等。本篇文章旨在为您详细解读 Highcharts 的配置说明,帮助您快速上手并应用 Highcharts 创建各种类型的图表。 标题配置 标题结构 Highcharts 的标题配置项…
介绍 Elastic Workflows:用于 Elasticsearch 的原生自动化
作者:来自 Elastic Sumana Mannem James Spiteri 在 Elasticsearch 中原生统一脚本化自动化和 AI agents。消除集成,直接对你的数据采取行动。 今天,我们正式推出 Elastic Workflows,这是直接内置在 Elasticsearch 中的自动化引擎…
C++ 循环
C++ 循环 引言 C++作为一种高效、灵活的编程语言,广泛应用于软件开发领域。循环语句是C++中的一种基本控制结构,用于重复执行一组语句。掌握循环语句对于提高编程效率、简化代码逻辑具有重要意义。本文将详细介绍C++中的循环结构,包括循环的基本概念、类型、应用以及注意事…
5吨级eVTOL横空出世,中国航空技术如何实现弯道超车?
📌 目录 ✈️ 中国航空炸场!全球首款5吨级电动飞机首飞,老外直呼看不懂一、首飞实测封神:5吨“大块头”,灵活又能飞(一)核心参数拉满,碾压同类产品(二)通俗解…
2026免费降AI率工具测评:对比这几款降AI工具,到底哪款效果最好?
转眼间就到过年了,先别管过年到底还有没有压岁钱了,最要紧的应该是论文,今年论文进度普遍都提前了,导师们各种催催催,真的亚历山大啊。 而且!!!论文现在并不是写出来就完事了&#…