C和C++的区别 04.函数重载
生活随笔
收集整理的這篇文章主要介紹了
C和C++的区别 04.函数重载
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
2019獨(dú)角獸企業(yè)重金招聘Python工程師標(biāo)準(zhǔn)>>>
函數(shù)重載(Overload):用同一函數(shù)名定義不同的函數(shù),當(dāng)函數(shù)名和不同參數(shù)搭配時(shí)函數(shù)的意義不同。
也就是說(shuō),函數(shù)重載就是,名字一樣,參數(shù)不同。參數(shù)不同有三種:個(gè)數(shù)不同、類型不同、順序不同。形參的名字和返回值相不相同無(wú)所謂。
來(lái)看看編譯器調(diào)用重載函數(shù)的準(zhǔn)則:(看不懂或者覺得暈可以不看)
- 將所有同名函數(shù)作為候選者
- 嘗試尋找可行的候選函數(shù)
- 精確匹配實(shí)參
- 通過(guò)默認(rèn)參數(shù)能夠匹配實(shí)參
- 通過(guò)默認(rèn)類型轉(zhuǎn)換匹配實(shí)參
- 匹配失敗
- 最終尋找到的可行候選函數(shù)不唯一,則出現(xiàn)二義性,編譯失敗。
- 無(wú)法匹配所有候選者,函數(shù)未定義,編譯失敗。
函數(shù)重載的注意事項(xiàng):
- 重載函數(shù)在本質(zhì)上是相互獨(dú)立的不同函數(shù)(靜態(tài)鏈編)。
- 重載函數(shù)的函數(shù)類型是不同的。
- 函數(shù)重載是由函數(shù)名和參數(shù)列表決定的。
轉(zhuǎn)載于:https://my.oschina.net/HappyTeemo/blog/1558437
總結(jié)
以上是生活随笔為你收集整理的C和C++的区别 04.函数重载的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: bzoj2073
- 下一篇: J2ME下的手机游戏的优化