php计算n天后的日期,C++ 计算n天后的日期

这篇博客展示了如何使用C++定义一个日期类`CDate`,该类包含年、月、日属性,并实现了日期的加减操作。通过`AddDays`、`AddMonths`和`AddYears`方法可以对日期进行增减,同时处理了月份和年份的进位。此外,还定义了重载的加法运算符用于日期相加。在`main`函数中,创建了一个`CDate`对象并展示了如何添加10天到初始日期上。
摘要由CSDN通过智能技术生成

#include

class CDate {

private:

int m_nDay; // Range: 1 - 30 (lets assume all months have 30 days!)

int m_nMonth; // Range: 1 - 12

int m_nYear;

void AddDays(int nDaysToAdd) {

m_nDay += nDaysToAdd;

if (m_nDay > 30) {

AddMonths(m_nDay / 30);

m_nDay %= 30; // rollover 30th -> 1st

}

}

void AddMonths(int nMonthsToAdd) {

m_nMonth += nMonthsToAdd;

if (m_nMonth > 12) {

AddYears(m_nMonth / 12);

m_nMonth %= 12; // rollover dec -> jan

}

}

void AddYears(int m_nYearsToAdd) {

m_nYear += m_nYearsToAdd;

}

public:

// Constructor that initializes the object to a day, month and year

CDate(int nDay, int nMonth, int nYear) :

m_nDay(nDay), m_nMonth(nMonth), m_nYear(nYear) {

}

;

CDate operator +(int nDaysToAdd) {

CDate newDate(m_nDay, m_nMonth, m_nYear);

newDate.AddDays(nDaysToAdd);

return newDate;

}

void DisplayDate() {

std::cout << m_nDay << " / " << m_nMonth << " / " << m_nYear;

}

};

int main() {

// Instantiate and initialize a date object to 25 May 2008

CDate mDate(25, 6, 2008);

std::cout << "The date object is initialized to: ";

// Display initial date

mDate.DisplayDate();

std::cout << std::endl;

std::cout << "Date after adding 10 days is: ";

// Adding 10 (days)...

CDate datePlus10(mDate + 10);

datePlus10.DisplayDate();

return 0;

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值