新聞中心
這篇文章主要介紹“C++中如何進(jìn)行函數(shù)重載”,在日常操作中,相信很多人在C++中如何進(jìn)行函數(shù)重載問(wèn)題上存在疑惑,小編查閱了各式資料,整理出簡(jiǎn)單好用的操作方法,希望對(duì)大家解答”C++中如何進(jìn)行函數(shù)重載”的疑惑有所幫助!接下來(lái),請(qǐng)跟著小編一起來(lái)學(xué)習(xí)吧!
創(chuàng)新互聯(lián)-專(zhuān)業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性?xún)r(jià)比蘭州網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式蘭州網(wǎng)站制作公司更省心,省錢(qián),快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋蘭州地區(qū)。費(fèi)用合理售后完善,十余年實(shí)體公司更值得信賴(lài)。
函數(shù)重載要求編譯器能夠***地確定調(diào)用一個(gè)函數(shù)時(shí)應(yīng)執(zhí)行哪個(gè)函數(shù)代碼,即采用哪個(gè)函數(shù)實(shí)現(xiàn)。確定函數(shù)實(shí)現(xiàn)時(shí),要求從函數(shù)參數(shù)的個(gè)數(shù)和類(lèi)型上來(lái)區(qū)分。這就是說(shuō),進(jìn)行函數(shù)重載時(shí),要求同名函數(shù)在參數(shù)個(gè)數(shù)上不同,或者參數(shù)類(lèi)型上不同。否則,將無(wú)法實(shí)現(xiàn)重載。
參數(shù)類(lèi)型上不同的重載函數(shù)下面舉一個(gè)在參數(shù)類(lèi)型不同的重載函數(shù)的例子:
#include int add(int, int); double add(double, double); void main() { cout< cout< } int add(int x, int y) { return x+y; } double add(double a, double b) { return a+b; }
該程序中,main()函數(shù)中調(diào)用相同名字add的兩個(gè)函數(shù),前邊一個(gè)add()函數(shù)對(duì)應(yīng)的是兩個(gè)int型數(shù)求和的函數(shù)實(shí)現(xiàn),而后邊一個(gè)add()函數(shù)對(duì)應(yīng)的是兩個(gè)double型數(shù)求和的函數(shù)實(shí)現(xiàn)。這便是函數(shù)的重載。
下面舉一個(gè)在參數(shù)個(gè)數(shù)上不相同的重載函數(shù)的例子:
#include int min(int a, int b); int min(int a, int b, int c); int min(int a, int b, int c, int d); void main() { cout< cout< } int min(int a, int b) { return a } int min(int a, int b, int c) { int t = min(a, b); return min(t,c); } int min(int a, int b, int c, int d) { int t1 = min(a, b); int t2 = min(c, d); return min(t1, t2); }
該程序中出現(xiàn)了C++ 函數(shù)重載,函數(shù)名min對(duì)應(yīng)有三個(gè)不同的實(shí)現(xiàn),函數(shù)的區(qū)分依據(jù)參數(shù)個(gè)數(shù)不同,這里的三個(gè)函數(shù)實(shí)現(xiàn)中,參數(shù)個(gè)數(shù)分別為2,3和4,在調(diào)用函數(shù)時(shí)根據(jù)實(shí)參的個(gè)數(shù)來(lái)選取不同的函數(shù)實(shí)現(xiàn)。
C++ 函數(shù)重載在類(lèi)和對(duì)象應(yīng)用比較多,尤其是在類(lèi)的多態(tài)性中。在以后我們將碰到更多的在類(lèi)型不同的函數(shù)重載,尤其是在結(jié)合類(lèi)的繼承性和指針類(lèi)型的不同,而這些都是我們以后用VC編程中經(jīng)常要用到的。
到此,關(guān)于“C++中如何進(jìn)行函數(shù)重載”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識(shí),請(qǐng)繼續(xù)關(guān)注創(chuàng)新互聯(lián)網(wǎng)站,小編會(huì)繼續(xù)努力為大家?guī)?lái)更多實(shí)用的文章!
名稱(chēng)欄目:C++中如何進(jìn)行函數(shù)重載
分享URL:http://www.ef60e0e.cn/article/pccsco.html