C++ const參數(shù)

2023-03-20 15:58 更新

你也許注意到了,函數(shù)after和addTime的參數(shù)都是傳遞引用。這倆函數(shù)是純函數(shù),不修改接受的參數(shù)值,因此我也可以傳值。

傳值的好處是調(diào)用函數(shù)和被調(diào)用函數(shù)都進(jìn)行了適當(dāng)?shù)姆庋b--其中一方的修改不可能影響另一方,除非影響了返回值。

另一方面,傳引用由于避免了參數(shù)的復(fù)制,往往更高效。除此之外,C++有一個(gè)優(yōu)秀的特性叫做const,它能使引用參數(shù)和值參數(shù)一樣安全。

If you are writing a function and you do not intend to modify a parameter, you can declare that it is aconstant reference parameter. The syntax looks like this: 如果你要編寫一個(gè)函數(shù),并不打算修改其參數(shù),你就可以聲明一個(gè)常量引用參數(shù)。語(yǔ)法如下:

void printTime (const Time& time) ...
Time addTime (const Time& t1, const Time& t2) ...

上面代碼只包含了函數(shù)的首行。如果你告訴編譯器你不打算修改參數(shù),這種語(yǔ)法可以起到提醒作用。如果你試圖改變參數(shù),編譯器會(huì)報(bào)錯(cuò),至少會(huì)告警。

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

掃描二維碼

下載編程獅App

公眾號(hào)
微信公眾號(hào)

編程獅公眾號(hào)