/*
* 檔名稱:test.cpp
* 作 者:劉佳琦
* 完成日期:2023年 4 月 10 日
* 版 本 號:v1.0
* * 問題描述: 定義下面兩個類的成員函式(為體驗友元類,實際上本例並不一定是乙個好的設計,將兩個類的合併為乙個datetime,日期、時間都處理更好)
* 程式輸入:無
* 程式輸出:時間
*/#includeusing namespace std;
int days(int m, int y);
class date; //對date類的提前引用宣告
class time
;class date
;int main( )
return 0;
}//下面定義兩個類中的成員函式,要求不得再增加成員函式
date::date(int m,int d,int y)
void time::display(date &d)
if(minute>=60)
if(hour>=24)
if(a.day>days(a.month,a.year))
if(a.month>12) }
int days(int m, int y) //days函式返回y年m月的天數
; if((y%100==0&&y%4!=0)||(y%400==0))
d[2]=29;
return d[m];
}//注意體會在time的成員函式中可以呼叫date類的私有資料成員
執行結果:
學習心得:
之前寫在紙上的程式在除錯的時候有兩處錯誤,第一date不是time的友元函式,因此,date類不能訪問time類,a.hour報錯,hour直接用就可以。還有if判斷的時候粗心大意,導致輸出結果錯了。
第六周專案五 友元類
問題及 檔名稱 友元類 cpp 作 者 白雲飛 完成日期 2015年4月9日 版 本 號 v1.0 問題描述 定義下面兩個類的成員函式 為體驗友元類,實際上本例並不一定是乙個好的設計,將兩個類的合併為乙個datetime,日期 時間都處理更好 程式輸入 無 程式輸出 時間 include inclu...
第六周 專案五 友元類
問題及 檔名稱 read.cpp 作 者 李楠 完成日期 2015年4月9日 版 本 號 v1.0 問題描述 定義下面兩個類的成員函式 為體驗友元類,實際上本例並不一定是乙個好的設計,將兩個類的合併為乙個datetime,日期 時間都處理更好 程式輸入 略 程式輸出 略 include includ...
第六周專案五 友元類
專案5 友元類 定義下面兩個類的成員函式 為體驗友元類,實際上本例並不一定是乙個好的設計,將兩個類的合併為乙個datetime,日期 時間都處理更好 提示 class date 對date類的提前引用宣告 class time class date int main return 0 下面定義兩個類...