最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

C/C++編程筆記:函數(shù)重載和const關鍵字

2021-05-08 22:18 作者:C語言編程__Plus  | 我要投稿



看看以下C ++程序的輸出:


輸出:上面的程序編譯并運行良好,并產(chǎn)生以下輸出。

fun() called

fun() const called

兩種方法'void fun()const'和'void fun()'具有相同的簽名,除了一個是const而另一個不是。另外,如果我們仔細看一下輸出,會發(fā)現(xiàn)在const對象上調(diào)用了“ const void fun()”,而在非const對象上調(diào)用了“ void fun()”。

C ++允許根據(jù)const類型重載成員方法。當函數(shù)返回引用或指針時,基于const類型的重載可能會很有用。我們可以使一個函數(shù)const返回一個const引用或const指針,另一個非const函數(shù)返回一個非const引用或指針。

參數(shù)呢?

與const參數(shù)有關的規(guī)則很有趣。讓我們首先看下面的兩個例子。程序1編譯失敗,但是程序2編譯并運行正常。


輸出:

編譯器錯誤:重新定義“ void fun(int)”


輸出:

const fun()ssss

只有當const參數(shù)是引用或指針時,C ++才允許基于參數(shù)的常數(shù)重載函數(shù)。這就是程序1編譯失敗,但程序2正常運行的原因。這條規(guī)則實際上是有道理的。在程序1中,參數(shù)“ i”按值傳遞,因此fun()中的“ i”是main()中“ i”的副本。因此fun()無法修改main()的“ i”。因此,接收“ i”作為常量參數(shù)還是普通參數(shù)都沒有關系。當我們通過引用或指針傳遞時,我們可以修改引用或指向的值,因此我們可以有兩個版本的函數(shù),一個可以修改引用或指向的值,另一個不能。

作為練習,預測以下程序的輸出:


以上就是今天的全部內(nèi)容了。每日分享小知識,希望對你有幫助~

另外如果你想更好的提升你的編程能力,學好C語言C++編程!彎道超車,快人一步!筆者這里或許可以幫到你~

微信公眾號:C語言編程學習基地

分享(源碼、項目實戰(zhàn)視頻、項目筆記,基礎入門教程)

歡迎轉(zhuǎn)行和學習編程的伙伴,利用更多的資料學習成長比自己琢磨更快哦!



C/C++編程筆記:函數(shù)重載和const關鍵字的評論 (共 條)

分享到微博請遵守國家法律
贵州省| 内江市| 南陵县| 石泉县| 建湖县| 柳河县| 灌阳县| 台江县| 保康县| 库伦旗| 杂多县| 吉林省| 思茅市| 山阴县| 康定县| 分宜县| 通河县| 四川省| 双柏县| 吉安县| 遂宁市| 阿坝县| 龙胜| 平谷区| 德保县| 客服| 吴旗县| 洛扎县| 肇州县| 金川县| 商河县| 襄汾县| 封丘县| 涡阳县| 和田县| 玛曲县| 尼木县| 邳州市| 栖霞市| 明星| 象山县|