题目描述
定义一个满足如下要求的Date类.
包含Year,Month,Day三个数据成员,以及构造函数,和设置日期函数
(1)用下面的格式输出日期:2012年3月5日
(2)重新设置日期
并编出应用程序,定义日期对象,设置日期,输出该对象提供的日期.
输入描述
输入初始 年 月 日,用空格隔开
输入修改的年 月 日,
输出描述
输出如下
输入样例
2012 10 3
2012 10 7
输出样例
原日期
2012年10月3日
修改后日期
2012年10月7日
#include <iostream>
using namespace std;
// 定义一个类; class 为创建类的关键字
class Date{ //定义一个类名
private: //访问控制符 访问权限 private 修饰的属性,只能在该类中被访问
int year; /* 变量year month day 保存初始日期 */
int month;
int day;
int new_year; /* 变量new_year new_month new_day 保存修改后的日期 */
int new_month;
int new_day;
public: // 声明公共方法
Date();
Date(int original_year, int original_month, int original_day);
Date(int new_year, int new_month, int new_day, int);
void show();
void update_show();
};
// 成员函数定义,包括构造函数
Date::Date(void){
}
Date::Date(int original_year, int original_month, int original_day)
{
year = original_year;
month = original_month;
day = original_day;
}
Date::Date(int update_year, int update_month, int update_day, int) // 通过占位符,让函数重载
{
new_year = update_year;
new_month = update_month;
new_day = update_day;
}
void Date::show(){ // 显示原日期的方法
cout << "原日期" << endl;
cout << year << "年" << month << "月" << day << "日" << endl;
}
void Date::update_show(){ // 显示修改后的日期方法
cout << "修改后日期" << endl;
cout << new_year << "年" << new_month << "月" << new_day << "日" << endl;
}
int main(void){
int original_year;
int original_month;
int original_day;
int new_year;
int new_month;
int new_day;
cin >> original_year >> original_month >> original_day;
Date date(original_year, original_month, original_day);
cin >> new_year >> new_month >> new_day;
Date update_date(new_year, new_month, new_day, 0);
// 调用类中的 显示原日期的方法 和 显示修改后的日期方法
date.show();
update_date.update_show();
}