C++ 最后一個(gè)例子

2023-03-20 16:22 更新

最后一個(gè)例子是addTime:

Time addTime2 (const Time& t1, const Time& t2) {
   double seconds = convertToSeconds (t1) + convertToSeconds (t2);
   return makeTime (seconds);
}

我們要對該函數(shù)做一些改變,包括:

  1. 把函數(shù)名addTime改成Time::add。

  2. 把第一個(gè)參數(shù)替換成隱式參數(shù),并將它聲明為const。

  3. 把原來的makeTime改成構(gòu)造函數(shù)調(diào)用。

結(jié)果如下:

Time Time::add (const Time& t2) const {
   double seconds = convertToSeconds () + t2.convertToSeconds ();
   Time time(second);
   return time;
}

第一次調(diào)用convertToSeonds時(shí),沒有顯式的對象!在一個(gè)成員函數(shù)中,編譯器假設(shè)我們要在當(dāng)前對象上調(diào)用函數(shù)。因此,第一次是在this上調(diào)用,第二次是在t2上調(diào)用。

函數(shù)接下來一行調(diào)用了構(gòu)造函數(shù),把單個(gè)double值作為參數(shù)。最后一行返回結(jié)果對象。

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號