小工具知识网

当前位置: 首页 > 行业知识 > 【C++】用C++实现一个日期计算器

行业知识

【C++】用C++实现一个日期计算器

2026-11-07 13:12:26 来源:互联网转载

欢迎来到CILMY23的博客

本篇主题为: 用C++实现一个日期计算器

个人主页:CILMY23-CSDN博客

系列专栏:Python | C++ | C语言 | 数据结构与算法 | 贪心算法 | Linux

感谢观看,支持的可以给个一键三连,点赞关注+收藏。


写在前头:

知识所需:构造函数,运算符重载,类和对象,类的声明和定义分离,内联函数,拷贝构造

额外知识: 友元声明

文件: Date.h Date.cpp test.cpp

注意:日期类的拷贝构造和析构都是不需要写的


目录

一、功能逻辑图

二、Date.cpp代码实现 

2.1 日期比较  

2.2 日期加天数 

2.3 日期减天数 

2.4 日期前置++和后置++

2.5 日期前置--和后置--

2.6 日期与日期相差的天数

2.7 日期显示 

2.8 流输出

2.9 流提取

2.10 日期类输入的检查和日期的初始化

三、Date.h中的声明 


一、功能逻辑图

日期计算器的功能如下,我们要考虑日期的增加和减少,自增和自减,以及两个日期类的比较,以及当前日期类的日期显示和用户的输入输出。

二、Date.cpp代码实现 

2.1 日期比较  

日期比较主要实现以下六种比较,因为日期的比较是自定义类型,所以我们需要用到运算符重载来进行比较,先通过实现等于和小于,其余的功能复用就可以了。 

 代码如下:

//日期比较//小于bool Date::operator=(const Date& d){return !(*this  

2.2 日期加天数 

日期增加天数我们所用到的运算符是 + 和 +=,日期增加有两种方式,一种是+复用+=,一种是+=复用+,我们实现的是+复用+=,另外一种会创建新对象造成效率降低。

Date& Date::operator+=(int day){_day += day;while (_day > GetMonthDay(_year, _month)){_day -= GetMonthDay(_year, _month);_month++;if (_month == 13){_month = 1;_year += 1;}}return *this;}Date Date::operator+(int day){Date tmp = *this;//拷贝构造tmp += day;return tmp;}

2.3 日期减天数 

日期减去天数也同理日期增加天数,先实现 -= 然后再去实现 - 

Date& Date::operator-=(int days) {_day -= days;while (_day 

上一篇:公共服务器电源怎么选?

下一篇:揭秘T9输入法源码奥秘,高效输入法的核心机制探索