#include <iostream>
using namespace std;#include "Time.h"Time::Time():myHours(12),myMinutes(0),myAMorPM('P'),myMilTime(0){}Time::Time(unsigned initHours,unsigned initMinutes,unsigned initAMPM){ if(initHours >=1 &&initHours <= 12&&initMinutes >= 0&& initMinutes <= 59&&(initAMPM == 'P'||initAMPM== 'A')) { myHours = initHours; myMinutes = initMinutes; myAMorPM = initAMPM; myMilTime = initHours * 100 + initMinutes + (initAMPM == 'P'?1200:0); } else cerr<<"****Invalid initial values****\n"; }void Time::display()const{ cout<<myHours<<":"<<(myMinutes > 10?"":"0")<<myMinutes<<" "<<myAMorPM<<".M"<<endl;}ostream& operator <<(ostream& out,const Time &T)//必须为成员函数,否则调用cout.operator<<(mealTime);函数,这表示operator<<()必须是类ostream的一个成员,而不是Time的一个类{ T.display(); return out;}int main(){ Time t; cout<<t; system("pause");}