C C 函式過載

2021-07-11 21:43:57 字數 820 閱讀 9044

把複雜的知識簡單化,就是我寫部落格的目的

-seen

首先要教各位看官如何使用c++的這個特性,方法很簡單,就是寫兩個函式,裡面引數不同,然後c++這種語言編譯器就能夠自動的解析這兩個函式,然後進行輸出

我們來看乙個例子:

#include  

#include

using

namespace

std;

void print(int i)

輸出的結果是:

我實現了兩種print函式,一種是列印int型,另一種是列印string型別

這裡就通過同名的print函式實現了兩個功能,大致的用法就是這樣,學會了這點,我們以後就可以通過這種方法用乙個函式實現不同的功能,這種方法就叫做函式過載

然後要分析一下函式過載的機制,這也是我部落格裡面用的少的地方,編譯器是如何認識函式過載這種事情的。

這種方法的**就是 編譯器把過載的函式按照:

作用域+返回型別+函式名+引數列表這種方法進行了對映

比如說:

進行了對映,我們寫的**通過編譯器編譯之後,編譯器會自動執行這個對映過程,從而準確的找到**

這就是c++函式過載,希望您能喜歡

C C 函式過載

c 標準庫已經提供了交換兩個變數的值的函式,它的名字就是swap,位於algorithm標頭檔案中。引數列表不同包括引數的個數不同 型別不同或順序不同,僅僅引數名稱不同是不可以的。函式返回值也不能作為過載的依據。僅僅返回型別不同不足以成為函式的過載。c 在編譯時會根據引數列表對函式進行重新命名,例如...

C C 的區別之函式過載

兩個數相加的泛型 c define sum a,b a b int main int a 10 int b 20 int rt sum a,b double rt2 sum 10.1,10.2 巨集函式 預編譯 替換 沒有型別檢查和安全檢查 不安全 void sum void a,int alen,...

C C 運算元過載函式標準庫實現

朋友可能會問,怎麼檢視庫檔案的標準實現呢?文章結尾告訴你!templateinline bool operator const pair t1 t2 x,const pair t1 t2 y templateinline bool operator x,const pair t1 t2 y temp...