題目要求如下:
-----------------------------------------------------------------------------------------------------------------------------------------------
代碼如下:
/*
* Copyright (c) 2013, 煙臺大學計算機學院
* All rights reserved.
* 作 者: 沈遠宏
* 完成日期:2014 年06月19日
* 版 本 號:v1.0
* 問題描述:Description
設計一個日期類和時間類,編寫display函數用於顯示日期和時間。要求:display函數作爲類外的普通函數,分別在Time和
Date類中將display聲明爲友元函數。在主函數中調用display函數,display函數分別引用Time和Date兩個類的對象的私有數
據,輸出年、月、日和時、分、秒。
Input
年、月、日和時、分、秒
Output
年、月、日和時、分、秒
*/#include <iostream>
using namespace std;
class Date;
class Time
{
private:
int hour;
int minute;
int second;
public:
Time(int hh,int mm,int ss):hour(hh),minute(mm),second(ss) {}
friend void display(Date& ,Time& );
};
class Date
{
private:
int year;
int month;
int day;
public:
Date(int yy,int mm,int dd):year(yy),month(mm),day(dd) {}
friend void display(Date& ,Time& );
};
void display(Date &d,Time &t)
{
cout<<d.year<<"/"<<d.month<<"/"<<d.day<<endl;
cout<<t.hour<<":"<<t.minute<<":"<<t.second<<endl;
}
//主函數已給定如下,提交時不需要包含下述主函數
int main()
{
void display(const Date &,const Time &);
int year,month,day;
cin>>year>>month>>day;
Date d1(year,month,day);
int hour,minute,second;
cin>>hour>>minute>>second;
Time t1(hour,minute,second);
display(d1,t1);
return 0;
}
運行結果:
OJ要求結果輸出例樣: