第八周專案2 Time類中的運算子過載

2021-07-02 07:54:02 字數 1776 閱讀 8469

問題及**:

/*

*檔名稱:project.cpp

*作 者:陳文青

*完成日期:2023年5月9日

*版 本 號:v1.0

**問題描述:實現time類中的運算子過載

*程式輸入:

*程式輸出:

*/#include using namespace std;

class ctime

;//建構函式

ctime::ctime(int h,int m,int s)

// 設定時間

void ctime::settime(int h,int m,int s)

//輸出時間

void ctime::display()

bool ctime::operator < (ctime &t)// 判斷時間t1t.hour) return false;

if (minutet.minute) return false;

if (secondt) return false;//充分利用已經定義好的運算子來進行相關運算子的定義

return true;

}bool ctime::operator != (ctime &t) // 判斷時間t1!=t2

bool ctime::operator >= (ctime &t)// 判斷時間t1>=t2

//二目的加減運算子的過載

//返回t規定的時、分、秒後的時間

//例t1(8,20,25),t2(11,20,50),t1+t2為19:41:15

ctime ctime::operator+(ctime &t)

if (m>59)

while (h>23) h-=24;

ctime t0(h,m,s);

return t0;

}// 計算時間之差

ctime ctime::operator - (ctime &t)

if (m<0)

while (h<0) h+=24;

ctime t0(h,m,s);

return t0;

}//返回s秒後的時間

ctime ctime::operator+(int s)

//返回s秒前的時間

ctime ctime::operator-(int s)

//賦值運算子的過載

ctime ctime::operator+=(ctime &c)

ctime ctime::operator-=(ctime &c)

ctime ctime::operator+=(int s)//返回s秒後的時間

ctime ctime::operator-=(int s)//返回s秒前的時間

知識點總結:

time類中的運算子過載

學習心得:

1.運算子過載,要學會充分使用已經過載過的運算子進行相關運算子過載。

2.要注意返回值的型別。

3.比較運算子要注意邏輯關係,避免定義錯誤,這時候便需要單步除錯進行檢查。

第八周 專案2 Time類中的運算子過載

實現time類中的運算子過載。class ctime private unsigned short int hour 時 unsigned short int minute 分 unsigned short int second 秒 public ctime int h 0,int m 0,int ...

第八周專案2 Time類中的運算子過載

實現time類中的運算子過載。class ctime 提示1 並不是所有比較運算過載函式都很複雜 比較運算返回的是比較結果,是bool型的true或false 可以直接使用已經過載了的運算實現新運算,例如果已經實現了 則實現 就可以很方便了 bool ctime operator ctime t 判...

第八周 專案2 Time類中的運算子過載

問題描述 實現time類中的運算子過載。cpp view plain copy print class ctime 提示1 並不是所有比較運算過載函式都很複雜 cpp view plain copy print 比較運算返回的是比較結果,是bool型的true或false 可以直接使用已經過載了的運...