函式多型是c++在c語言的基礎上新增的功能。預設引數讓你能夠使用不同數目的引數呼叫同乙個函式,而函式多型(函式過載)讓你能夠使用多個同名的函式。術語「多型」指的是有多種形式,因此函式多型允許函式可以有多種形式。類似的,術語「函式過載「指的是可以有多個同名的函式,因此對名稱進行了過載。這兩個術語指的是同一回事,但我們通常使用函式過載。可以通過函式過載來設計一系列函式—它們完成相同的工作,但使用不同的引數列表。
函式過載的關鍵是函式的引數列表—也稱為函式特徵標。舉個例子:
void print(const char *str,int width); #1
void print(double d,int width); #2
void print(long l,int width); #3
void print(int i,int width); #4
void print(const char *str); #5
使用print()函式時,編譯器將根據所採用的用法使用有相應特徵標的原型:
print("packages",15); 呼叫#1
print("syrup"); #5
print(1999.0,12); #2
print(1999,12); #4
print(1999l,15); #3
注意 當出現乙個可以分別呼叫多個的時候,編譯器會報錯,所以引數一定要對應起來,不要有衝突!
mysql 函式過載 C 方法過載(函式過載)
在講解 c 構造方法 時提到定義構造方法時提到可以定義帶 0 到多個引數的構造方法,但構造方法的名稱必須是類名。實際上,這就是乙個典型的方法過載,即方法名稱相同 引數列表不同。引數列表不同主要體現在引數個數或引數的資料型別不同。在呼叫過載的方法時系統是根據所傳 遞引數的不同判斷呼叫的是哪個方法。例項...
C 函式 函式過載
如果同一作用域內的幾個函式名字相同但形參列表不同,我們稱之為過載函式。void print const char cp void print const int beg,const int end void print const int ia,size t size 這些函式接受的形參型別不一樣,...
C 函式過載
函式過載 overloaded function 在相同的作用域中的兩個函式,如果有相同的名字而形參表不同 注意 如果僅僅函式的返回值不同是不能實現函式過載 void func int int func int error,僅僅返回值不同是不能作為函式過載,這屬於函式重定義 形參表包括 引數的型別 ...