a_10_6.cpp
来自「C++应用教程原码,里面包含该书中有十三章内容的代码,详细具体」· C++ 代码 · 共 53 行
CPP
53 行
#include "stdafx.h"
#include <iostream>
#include <string>
using namespace std;
class Date {
public:
Date():year(0),month(0),day(0){}
friend ostream& operator << (ostream&, Date&);
friend istream& operator >> (istream&, Date&);
private:
int year,month,day;
};
ostream& operator << (ostream& out, Date& date)
{ out << date.year << "年" << date.month << "月" << date.day << "日"<<endl;
return out;
}
istream& operator >> (istream& in, Date &date)
{ cout << "输入年份:";
in >> date.year;
while ( !in)
{ in.clear();
in.ignore(90,'\n');
cout << "输入错误,请重新输入年份:";
in >> date.year;
}
cout << "输入月份:";
in >> date.month;
while ( !in||(date.month>12)||(date.month<=0))
{ in.clear();
in.ignore(90,'\n');
cout << "输入错误,请重新输入月份:";
in >> date.month;
}
cout << "输入日期:";
in >> date.day;
while ( !in||(date.day>31)||(date.day<=0))
{ in.clear();
in.ignore(900,'\n');
cout << "输入错误,请重新输入日期:";
in >> date.day;
}
return in;
}
void main()
{ Date date1;
cin >> date1;
cout << date1;
cin.get(); cin.get(); //等待结束,以便调测程序,可以删除
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?