C 函式過載

2021-09-09 02:04:17 字數 554 閱讀 1459

c++語言中提供了對函式過載的支援,是我們在程式設計時可以對不同的功能賦予相同的函式名,編譯時會根據上下文(實參的型別和個數)來確定使用哪乙個具體功能。

兩個以上的函式,具有相同的函式名,但是形參的個數或者型別不同,編譯器根據實參和形參的型別及個數的最佳匹配,自動確定呼叫哪乙個函式,這就是函式的過載。

如果沒有過載機制,那麼對不同型別的資料進行相同的操作也需要定義名稱不同的函式。例如定義加法,就必須定義對證書的加法和浮點數的加法使用不同的函式名:

int iadd(int x, int

y);float fadd(float x, float y);

這在呼叫時實在是不方便。

c++允許功能相近的函式在相同的作用域內以相同的函式名定義,從而形參函式過載。方便使用,便於記憶。

注意   過載函式的形參必須不同:個數或者型別不同。編譯程式對實參和形參的型別及個數進行最佳匹配,來選擇呼叫哪乙個函式。如果函式名相同,形參型別也相同(無論函式返回值型別是否相同),在編譯是會被認為是語法錯誤(函式重複定義)。

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,僅僅返回值不同是不能作為函式過載,這屬於函式重定義 形參表包括 引數的型別 ...