版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第C++淺析函數(shù)重載是什么目錄前言函數(shù)重載一些其他問(wèn)題2.1int和char怎么區(qū)分2.2傳值
前言
這是一個(gè)非常重要的點(diǎn)
函數(shù)重載:是函數(shù)的一種特殊情況,C++允許在同一作用域中聲明幾個(gè)功能類似的同名函數(shù)。
這些同名函數(shù)的形參列表(參數(shù)個(gè)數(shù)或類型或順序)必須不同,常用來(lái)處理實(shí)現(xiàn)功能類似數(shù)據(jù)類型不同的問(wèn)題
或者說(shuō),給一個(gè)名字賦予第二層意義,一詞多義,有點(diǎn)內(nèi)涵那意思
函數(shù)重載
首先C語(yǔ)言不允許定義同名的函數(shù),但是C++可以,原因就涉及到了函數(shù)重載
函數(shù)重載的要求:函數(shù)名相同,參數(shù)不同(參數(shù)類型不同,參數(shù)個(gè)數(shù)不同)
例子:
定義三個(gè)函數(shù)名相同的函數(shù),在C++中可以構(gòu)成函數(shù)重載
這三個(gè)函數(shù)的函數(shù)名一樣,但是類型不同
intADD(intleft,intright){
returnleft+right;
doubleADD(doubleleft,doubleright){
returnleft+right;
longADD(longleft,longright){
returnleft+right;
}
它們的類型分別是int,double,long。
而且個(gè)數(shù)不同也能構(gòu)成函數(shù)重載。
下面來(lái)打印玩一下(剛開(kāi)始玩打印很正常,但是工作中很少用)
intmain(void){
coutADD(1,2)endl;
coutADD(1.2,2.2)endl;
coutADD(40l,40l)endl;
return0;
}
結(jié)果:
感覺(jué)是調(diào)用的是一個(gè)函數(shù),但其實(shí)不止一個(gè),因?yàn)檫@個(gè)函數(shù)被重載了,所以有三層定義。
實(shí)際上調(diào)用的是
1:int類型的
2:double類型的
3:long類型的。
一些其他問(wèn)題
缺省算不算重載?
//NO.1
intADD(intleft,intright){
returnleft+right;
//NO.2
intADD(intleft=1,intright=2){
returnleft+right;
}
注意:NO.1和NO.2兩個(gè)不算重載,因?yàn)闃?gòu)成重載的條件是參數(shù)的類型不同或者個(gè)數(shù)不同,以上均不滿足。重載只看類型
但是
//NO.2
intADD(intleft=1,intright=2){
returnleft+right;
//NO.3
doubleADD(doubleleft,doubleright){
returnleft+right;
}
NO.2和NO.3是構(gòu)成重載的,因?yàn)闈M足了重載的條件
函數(shù)重載的要求:函數(shù)名相同,參數(shù)不同(參數(shù)類型不同,參數(shù)個(gè)數(shù)不同)
綜上所述,缺省和重載沒(méi)有關(guān)系!
2.1int和char怎么區(qū)分
intADD(intleft=10,intright=20){
returnleft+right;
charADD(charleft,charright){
returnleft+right;
intmain(){
coutADD()endl;
//coutADD(1,2)endl;//(1,2)字面量常量,
//默認(rèn)給十進(jìn)制,十六進(jìn)制等等,給的整形默認(rèn)算常量
//如果調(diào)用char
coutADD('1','2')endl;//char類型打印,自動(dòng)按%c,字符類型→→→→→↓
//傳字符才調(diào)用char類型的↓
//↓
//char類型的字符只是顯示表面,深入剖析的話在內(nèi)存中,它存儲(chǔ)在4byte中,是它對(duì)應(yīng)的ASCII碼值↓
//ASCII碼值還是整形,只不過(guò)是1byte↓
//char類型存的值是‘49',‘50'.←←←←←←←←←←←←←←
//對(duì)應(yīng)的是c。c在ASCII碼值中是99←←←←←←←←←←←←←←
return0;
}
總結(jié):
1.char和int都是表示整形的,整形一般都是用來(lái)表示大小,只不過(guò)int是4byte,char是1byte
2.char的1byte是用來(lái)表示ASCII碼值的字母,多個(gè)字母可以表示英文,就能表示文字了
2.2傳值
有三個(gè)值,但是缺省了一個(gè),傳的時(shí)候只傳了兩個(gè)
voidlost(inta,intb,intc=1){
voidlost(inta,intb){
//以上構(gòu)成函數(shù)重載,函數(shù)名相同,參數(shù)或者個(gè)數(shù)不同
intmain(){
lost(1,2,3);
lost(1,2);
//↑是編不過(guò)去的,
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2026年數(shù)據(jù)科學(xué)基礎(chǔ)概念初級(jí)自測(cè)題
- 2026年農(nóng)用無(wú)人機(jī)技術(shù)應(yīng)用與管理專業(yè)認(rèn)證試題庫(kù)
- 2026年會(huì)計(jì)師財(cái)務(wù)報(bào)表分析與稅務(wù)籌劃題集
- 中國(guó)咖啡飲料市場(chǎng)滲透率調(diào)查與增長(zhǎng)潛力預(yù)測(cè)報(bào)告
- 中國(guó)咖啡連鎖行業(yè)市場(chǎng)現(xiàn)狀消費(fèi)習(xí)慣及投資回報(bào)分析研究報(bào)告
- 中國(guó)咖啡連鎖品牌擴(kuò)張戰(zhàn)略與消費(fèi)趨勢(shì)報(bào)告
- 中國(guó)咖啡市場(chǎng)前景與投資戰(zhàn)略研究報(bào)告
- 2026年產(chǎn)品設(shè)計(jì)經(jīng)理面試專業(yè)題庫(kù)
- 疏散指示標(biāo)志規(guī)范
- 2025年止回閥水錘防護(hù)現(xiàn)場(chǎng)測(cè)試安全協(xié)議
- 2026年中考英語(yǔ)復(fù)習(xí)專題課件:謂語(yǔ)動(dòng)詞的時(shí)態(tài)和被動(dòng)語(yǔ)態(tài)
- 糧食行業(yè)競(jìng)爭(zhēng)對(duì)手分析報(bào)告
- 兒科MDT臨床技能情景模擬培訓(xùn)體系
- 【高三上】2026屆12月八省聯(lián)考(T8聯(lián)考)語(yǔ)文試題含答案
- (人教版)必修第一冊(cè)高一物理上學(xué)期期末復(fù)習(xí)訓(xùn)練 專題02 連接體、傳送帶、板塊問(wèn)題(原卷版)
- 護(hù)理不良事件根本原因分析
- 社會(huì)心理學(xué)考試題及答案
- 門(mén)窗工程掛靠協(xié)議書(shū)
- 醫(yī)療器械經(jīng)營(yíng)企業(yè)質(zhì)量管理體系文件(2025版)(全套)
- 出鐵廠鐵溝澆注施工方案
- 2025年中小學(xué)教師正高級(jí)職稱評(píng)聘答辯試題(附答案)
評(píng)論
0/150
提交評(píng)論