定义一个满足如下要求的 Date 类:定义带参数的构造函数,显示输出日期函数格式为:日/月/年,修改日期函数 setDate ,友元函数 Equal 判断两个日期是否相等,最后编写主函数测试。(运行效果如下图所示) Date one is : 15/4/2022 Date one is : 15/3/2022 The tuo dates is Unequal Press any key to continue .
时间: 2024-03-15 14:47:46 浏览: 90
定义一个名为Date的类,用于输入并验证日期
5星 · 资源好评率100%
好的,这是一个关于 Date 类的问题,我来为您解答。
首先,我们需要定义一个 Date 类,包含日、月、年三个私有成员变量和一些公有成员函数。具体实现如下:
```cpp
#include<iostream>
using namespace std;
class Date {
private:
int day;
int month;
int year;
public:
Date(int d, int m, int y) { //构造函数
day = d;
month = m;
year = y;
}
void displayDate() { //显示输出日期
cout << day << "/" << month << "/" << year << endl;
}
void setDate(int d, int m, int y) { //修改日期
day = d;
month = m;
year = y;
}
friend bool Equal(Date d1, Date d2); //判断两个日期是否相等
};
bool Equal(Date d1, Date d2) { //友元函数
if (d1.day == d2.day && d1.month == d2.month && d1.year == d2.year) {
return true; //相等
}
else {
return false; //不相等
}
}
int main() {
Date one(15, 4, 2022); //创建一个日期对象 one
Date two(15, 3, 2022); //创建一个日期对象 two
cout << "Date one is : ";
one.displayDate(); //输出日期 one
cout << "Date two is : ";
two.displayDate(); //输出日期 two
if (Equal(one, two)) {
cout << "The two dates is Equal" << endl;
}
else {
cout << "The two dates is Unequal" << endl;
}
return 0;
}
```
代码中定义了一个 Date 类,包含一个带参数的构造函数、一个显示输出日期的函数、一个修改日期的函数和一个友元函数。其中,友元函数的作用是判断两个日期是否相等。
在主函数中,我们创建了两个日期对象 one 和 two,并且通过调用 displayDate 函数输出了它们的日期。最后,根据 Equal 函数的返回值判断了这两个日期是否相等,输出相应的结果。
最终,运行程序的效果如下所示:
```
Date one is : 15/4/2022
Date two is : 15/3/2022
The two dates is Unequal
```
希望我的回答能够帮到您!
阅读全文