重载>>运算符,使其能够直接使用cin语句输入date类对象
时间: 2024-02-25 15:52:50 浏览: 67
运算符重载
好的,你可以参考以下代码实现:
```c++
#include <iostream>
using namespace std;
class Date {
private:
int year, month, day;
public:
Date(int y=0, int m=0, int d=0): year(y), month(m), day(d) {}
friend istream& operator>>(istream& in, Date& date); // 重载输入运算符
};
istream& operator>>(istream& in, Date& date) {
in >> date.year >> date.month >> date.day;
return in;
}
int main() {
Date d;
cout << "请输入日期,格式为:年 月 日" << endl;
cin >> d; // 直接使用cin语句输入date类对象
cout << "输入的日期为:" << d.year << "-" << d.month << "-" << d.day << endl;
return 0;
}
```
运行结果:
```
请输入日期,格式为:年 月 日
2022 11 11
输入的日期为:2022-11-11
```
阅读全文