1. 程式人生 > >過載操作符(日期類)

過載操作符(日期類)

#include “iostream”
using namespace std;
class Date
{
private:
int year,month,day;
public:
Date(int a=0,int b=0,int c=0)
{
this->year=a;
this->month=b;
this->day=c;
}
void Show()
{
cout<<year<<"-"<<month<<"-"<<day<<endl;
}
friend ostream &operator <<(ostream& cout,Date d)
{//過載插入符 使得可以直接cout<<自定義的累這種形式的操作可以實現
cout << d.year << “-” << d.month << “-” << d.day;
return cout;
}//ostream &operator<<即為過載操作符做法 在括號中包括的(ostream&cout,Date即把輸出和Date類練聯絡在一起了)
} ;

int main()
{
Date d1(2013,3,20);
cout<<d1<<endl;//直接輸出物件d1
d1.Show();//注意與前一句等價
return 0;
}