C/C++編程筆記:無法在C++中重載的函數(shù),六種方式

在C ++中,以下函數(shù)聲明不能重載。
1)僅在返回類型上不同的函數(shù)聲明。例如,以下程序編譯失?。?/p>
2)具有相同名稱和名稱參數(shù)類型列表的成員函數(shù)聲明,如果其中任何一個都是靜態(tài)成員函數(shù)聲明,則不能重載。例如,以下程序編譯失?。?/p>
3)僅在指針*與數(shù)組[]中不同的參數(shù)聲明是等效的。即,將數(shù)組聲明調(diào)整為指針聲明。在參數(shù)類型中,只有第二維和后續(xù)數(shù)組維才有意義。例如,以下兩個函數(shù)聲明是等效的:
4)僅在一個是函數(shù)類型而另一個是指向相同函數(shù)類型的指針方面不同的參數(shù)聲明是等效的。
5)僅在存在和不存在const和/或volatile方面不同的參數(shù)聲明是等效的。也就是說,在確定要聲明,定義或調(diào)用哪個函數(shù)時,將忽略每種參數(shù)類型的const和volatile類型說明符。例如,以下程序在編譯時失敗,并顯示錯誤“重新定義'int f(int)'”
例子:
以這種方式,僅忽略參數(shù)類型說明中最外層的const和volatile類型說明符。包含在參數(shù)類型規(guī)范中的const和volatile類型說明符很重要,可用于區(qū)分重載的函數(shù)聲明。
6)兩個僅在默認參數(shù)方面不同的參數(shù)聲明是等效的。例如,以下程序在編譯時失敗,并顯示錯誤“重新定義`int f(int,int)'”
以上就是今天的全部內(nèi)容了。每日分享小知識,希望對你有幫助~
另外如果你想更好的提升你的編程能力,學好C語言C++編程!彎道超車,快人一步!筆者這里或許可以幫到你~
微信公眾號:C語言編程學習基地
分享(源碼、項目實戰(zhàn)視頻、項目筆記,基礎(chǔ)入門教程)
歡迎轉(zhuǎn)行和學習編程的伙伴,利用更多的資料學習成長比自己琢磨更快哦!
