C++小练1(设计一个带重载构造函数的日期类)

描述
设计一个带重载构造函数的日期类Date,数据成员有年、月、日;成员函数包括:一个带参数的构造函数Date(int,int,int),一个不带参数的构造函数(设置日期为1900年1月1日),一个按“年-月-日”格式显示日期的函数,一个对数据成员赋值的函数void init(int,int,int)。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

主函数中对类的测试要求:

  1. 分别使用两个不同的重载构造函数创建两个日期类对象(必须为d1,d2,d2初始值为2100-12-12);
  2. 按“年-月-日”格式分别显示两个对象的值;
  3. 输入数据,用init函数为d1赋值;
    4.按“年-月-日”格式显示对象d1的值;。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

主函数如下:‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

int main() {
	int y, m, d;
	cin >> y >> m >> d;
	Date d1, d2(2100, 12, 12);
	d1.show();
	d2.show();
	d1.init(y, m, d);
	d1.show();
	return 0;
}

输入
给d1赋值的数据。‪‬‪‬‪‬‪‬‪‬‮‬‭‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‫‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‫‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‪‬‪‬‪‬‪‬‪‬‪‬‮‬‪‬‮‬

输出
d1的默认值
d2的初始值
d1赋值后的值

在这里插入图片描述
答案如下:

//定义一个带重载构造函数的日期类
#include <iostream>
using namespace std;

class Date {
		int year, month, day;
	public:
		Date();
		Date(int year, int month, int day);
		void show();
		void init(int y, int m, int d);
};

Date::Date() {
	year = 1900;
	month = 1;
	day = 1;
}

Date::Date(int year, int month, int day) {
	this->year = year;
	this->month = month;
	this->day = day;//this指针分辨形参和数据
}

void Date::init(int y, int m, int d) {
	year = y;
	month = m;
	day = d;
}

void Date::show() {
	cout << year << '-' << month << '-' << day << endl;
}

int main() {
	int y, m, d;
	cin >> y >> m >> d;
	Date d1, d2(2100, 12, 12);
	d1.show();
	d2.show();
	d1.init(y, m, d);
	d1.show();
	return 0;
}
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Script kid

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值