f0903.cpp
资源名称:c.rar [点击查看]
上传用户:puke2000
上传日期:2022-07-25
资源大小:912k
文件大小:1k
源码类别:
C#编程
开发平台:
Visual C++
- //=====================================
- // f0903.cpp
- // 构造函数重载
- //=====================================
- #include<iostream>
- #include<iomanip>
- using namespace std;
- //-------------------------------------
- class Date{
- int year, month, day;
- public:
- Date(int y=2000, int m=1, int d=1); // 设置默认参数
- Date(const string& s); // 重载
- bool isLeapYear()const;
- friend ostream& operator<<(ostream& o, const Date& d);
- };//-----------------------------------
- Date::Date(const string& s){
- year = atoi(s.substr(0,4).c_str());
- month = atoi(s.substr(5,2).c_str());
- day = atoi(s.substr(8,2).c_str());
- }//------------------------------------
- Date::Date(int y, int m, int d){ year=y,month=m,day=d; }
- //-------------------------------------
- bool Date::isLeapYear()const{
- return (year % 4==0 && year % 100 )|| year % 400==0;
- }//------------------------------------
- ostream& operator<<(ostream& o, const Date& d){
- o<<setfill('0')<<setw(4)<<d.year<<'-'<<setw(2)<<d.month<<'-';
- return o<<setw(2)<<d.day<<'n'<<setfill(' ');
- }//------------------------------------
- int main(){
- Date c("2005-12-28");
- Date d(2003,12,6);
- Date e(2002); // 默认两个参数
- Date f(2002,12); // 默认一个参数
- Date g; // 默认三个参数
- cout<<c<<d<<e<<f<<g;
- }//====================================