您好,登錄后才能下訂單哦!
這篇文章主要介紹“C++函數重載怎么用”,在日常操作中,相信很多人在C++函數重載怎么用問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”C++函數重載怎么用”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
上一篇文章我們主要說了函數的參數列表,那么函數除了有參數列表外,還有另一個要素,返回值。如果有返回值的話,又返回我們想要返回的數據,如果沒有的話就用void。這個跟C中一樣,沒什么需要強調的,那么有的的朋友可能會想到我們之前介紹過引用和指針了,它們可以作為函數的返回值嗎?
這里需要做個區分,如果引用或者指針在函數體外,也就是說不是這個函數的局部變量的話,它們是可以作為返回值的,但是如果引用或指針是在這個函數中定義的話,也就是局部變量的話,就不能作為函數的返回值。
原因很簡單,因為函數作為最小的執行單元,在執行完后會被釋放掉,函數中所有申請的非靜態資源均要被釋放,如果這個引用或指針作為返回值的話,是不能將值傳出來的。
函數重載
如果朋友們有面向對象編程經驗的話,那么一定聽說過函數重載這個概念,這個在java中叫方法重載,其實本質上是一樣的。所謂函數重載,就是可以在同一個源文件中定義多個函數名相同的函數,但是它們需要有不同的參數列表。我們看一下下面的代碼:
void print(const char *cp);
void print(const int *beg, const int *end);
void print(const int ia[], size_t size);
可以看到上面有三個print函數,但是它們的參數列表不同,代碼在調用函數時,編譯器可以根據參數列表推斷出我們想要調用的函數。
到此,關于“C++函數重載怎么用”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。