Date类重载“+”运算符
来源:互联网 发布:c语言生成Excel文件 编辑:程序博客网 时间:2024/06/06 00:05
[7.11]为Date类重载“+”运算符,实现在某一个日期上(月、日、年)加一个天数。Date类如下:
class Date{
public:
Date(){ }
Date(int m,int d,int y)
{ month=m;
day=d;
year=y;
}
void print()
{ cout<<year<<"."<<month<<"."<<day<<endl;
}
Date operator +(int);
private:
int month,day,year;
};
#include<iostream> using namespace std;class Date{ public: Date(){ } Date(int m,int d,int y) { month=m; day=d; year=y; } void print() {cout<<year<<"."<<month<<"."<<day<<endl; } Date operator +(int); private: int month,day,year;};static int days[2][12]={{31,28,31,30,31,30,31,31,30,31,30,31},{31,29,31,30,31,30,31,31,30,31,30,31}};int isleap(int year){ if ((year%4==0&&year%100!=0)||(year%400==0))return 1;elsereturn 0;}Date Date::operator+(int n){int leap; leap=0; leap=isleap(this->year); n+=this->day; while (n>days[leap][this->month-1]) { n-=days[leap][this->month-1]; if (++(this->month)==13) { this->month=1;(this->year)++; leap=isleap(this->year); } } this->day=n; return *this;}int main(){ Date d1(2,20,2000),d2; d1.print(); d2=d1+365; d2.print(); return 0;}
0 0
- Date类重载“+”运算符
- 日期类(Date)_运算符重载简单应用
- 定义日期类Date,并重载运算符实现几种操作
- 类运算符重载
- 十九、运算符重载(三)String类的改进实现、[]运算符重载、+运算符重载、+=运算符重载、<<运算符重载、>>运算符重载
- date类实现操作符重载
- 【7.11】为Date类重载“+”运算符,实现在某一个日期上(月、日、年)加一个天数。
- 运算符重载--类的赋值运算符重载
- 类的运算符重载
- 复数类运算符重载
- 分数类--运算符重载
- 时间类运算符重载
- 运算符重载----有理数类
- 运算符重载----日期类
- CTime类运算符重载
- 运算符重载 分数类
- 复数类--重载运算符+,-,*,/
- 复数类--重载运算符+
- Mysql分页负数sql攻击
- Linux下配置Java
- Java反射 具体需求实现案例一
- (win32)main&proc
- 实现Android 动态加载APK(Fragment or Activity实现)
- Date类重载“+”运算符
- C51:ERROR:bad operand type % 取模和取余
- MonjaDB —— 基于 Eclipse 的 MongoDB GUI 客户端工具
- 【MFC学习笔记-作业7-小型画图软件】【】
- MongoDB 数据文件备份与恢复
- hadoop2.6.0伪分布式安装
- GOF23之适配器模式Demo
- UVa 1025 A Spy in the Metro
- iOS 中捕获程序崩溃日志