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

C++:多继承习题4

题目内容:

首先构建一个Date(日期)类,其中包含年、月、日三个数据成员;其次构建一个Time(时间)类,其中包含时、分、秒三个数据成员。最后构建一个Datetime子类,要求日期类和时间类都是该类的父类,并且这个子类中有显示年月日时分秒的一个showtime()成员函数。在主函数中将这个类实例化,并显示出日期与时间。

输出样例如图:

代码如下:

#include<iostream>
using namespace std;

class Date
{
protected:
	int Year, Month, Day;
public:
	Date(int y = 0, int m = 0, int d = 0) : Year(y), Month(m), Day(d) {}

	void SetDate(int y, int m, int d)
	{
		Year = y;
		Month = m;
		Day = d;
	}
};

class Time
{
protected:
	int Hour, Minute, Second;
public:
	Time(int h = 0, int m = 0, int s = 0) : Hour(h), Minute(m), Second(s) {}

	void SetTime(int h, int m, int s) {
		Hour = h;
		Minute = m;
		Second = s;
	}
};

class Datetime : public Date, public Time
{
public:
	Datetime(int y = 0, int m = 0, int d = 0, int h = 0, int min = 0, int s = 0)
		: Date(y, m, d), Time(h, min, s) {}
	void showtime()
	{
		cout << "Year :  " << Year << endl << "Month :  " << Month << endl << "Day :  " << Day << endl;
		cout << "Hour :  " << Hour << endl << "Minute :  " << Minute << endl << "Second :  " << Second << endl;
	}
};


int main()
{
	Datetime datetime(2024, 5, 29, 5, 20, 4);
	datetime.showtime();
}

这段 C++ 代码定义了三个类:DateTime 和 Datetime,并在 main 函数中创建 Datetime 类的对象来展示日期和时间信息。下面是对代码的详细解释:

1. Date类的定义

  • 成员变量
    • YearMonthDay:分别表示年、月、日,使用 protected 访问修饰符,意味着这些成员可以在类本身和派生类中访问。
  • 构造函数
    • Date(int y = 0, int m = 0, int d = 0):带有默认参数的构造函数,用于初始化 YearMonth 和 Day
  • 成员函数
    • SetDate(int y, int m, int d):用于设置日期的年、月、日。

2. Time类的定义

  • 成员变量
    • HourMinuteSecond:分别表示小时、分钟、秒,使用 protected 访问修饰符。
  • 构造函数
    • Time(int h = 0, int m = 0, int s = 0):带有默认参数的构造函数,用于初始化 HourMinute 和 Second
  • 成员函数

SetTime(int h, int m, int s):用于设置时间的小时、分钟、秒。

3. Datetime类的定义

  • 继承关系
    • class Datetime : public Date, public TimeDatetime 类从 Date 类和 Time 类进行公共继承,这意味着 Datetime 类可以访问 Date 和 Time 类的 protected 和 public 成员。
  • 构造函数
    • Datetime(int y = 0, int m = 0, int d = 0, int h = 0, int min = 0, int s = 0):调用 Date 和 Time 类的构造函数来初始化从它们继承的成员。
  • 成员函数
    • showtime():用于输出日期和时间的信息,包括年、月、日、小时、分钟和秒。

4. main函数

  • 创建 Datetime 类的对象 datetime,并使用构造函数初始化日期为 2024 年 5 月 29 日,时间为 5 时 20 分 4 秒。
  • 调用 showtime() 函数输出日期和时间信息。

这段代码通过继承实现了日期和时间的组合,将 Date 类和 Time 类的功能集成到 Datetime 类中,并且提供了显示日期和时间信息的功能。

觉得有帮助就给博主点个关注叭~~

有问题的可以私信或者在评论区一起交流

友友们一起加油叭QAQ


http://www.kler.cn/a/524745.html

相关文章:

  • 性能优化2-删除无效引用
  • 【Super Tilemap Editor使用详解】(十三):快捷键指南(Keyboard Shortcuts)
  • 2023年吉林省职业院校技能大赛网络系统管理样题-网络配置(华三代码)
  • ubuntu取消输入密码
  • Android 启动流程
  • 【第十天】零基础入门刷题Python-算法篇-数据结构与算法的介绍-两种常见的字符串算法(持续更新)
  • 【HarmonyOS之旅】基于ArkTS开发(三) -> 兼容JS的类Web开发(三)
  • Windows 程序设计6:错误码的查看
  • 实验十 数据库完整性实验
  • World Creator地形导入UE
  • 如何在gitee/github上面搭建obsidian的图床
  • Synology 群辉NAS安装(8)安装jira前的用户和组的准备
  • 【使用Apache Flink 实现滑动窗口流式计算】
  • 灰色预测模型
  • 实现前端当中的页面过渡动画
  • 如何监控公司网络与 WorkWin 软件应用解析:办公效能提升路径探究
  • BASE基本理论你了解吗?
  • Java Web 开发基础介绍
  • 最近最少使用算法(LRU最近最少使用)缓存替换算法
  • 大数据相关职位介绍之二(数据治理,数据库管理员, 数据资产管理师,数据质量专员)
  • 谈谈出国留学文书PS写作中的注意事项
  • 认识小程序的基本组成结构
  • Synology 群辉NAS安装(9)安装jira
  • 学术方向选则与规划DeepSeek、ChatGPT和Kimi对比
  • 本地部署deepseek模型步骤
  • 回顾Maven