偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

如何對C++進行函數重載

開發(fā) 后端
在C++中進行C++ 函數重載時,在下文將舉一個在參數個數上不相同的重載函數的例子來充分說明C++ 函數重載問題。

下面對C++ 函數重載進行學習探討,C++ 函數重載是指同一個函數名可以對應著多個函數的實現,如果要對編譯器進行函數重載時話,那么就要使用extern "C"來說明。

另一個實現是求兩個浮點型數之和,再一個實現是求兩個復數的和。每種實現對應著一個函數體,這些函數的名字相同,但是函數的參數的類型不同。這就是函數重載的概念。函數重載在類和對象的應用尤其重要。

函數重載要求編譯器能夠***地確定調用一個函數時應執(zhí)行哪個函數代碼,即采用哪個函數實現。確定函數實現時,要求從函數參數的個數和類型上來區(qū)分。這就是說,進行函數重載時,要求同名函數在參數個數上不同,或者參數類型上不同。否則,將無法實現重載。

參數類型上不同的重載函數下面舉一個在參數類型不同的重載函數的例子:

  1. #include  
  2. int add(int, int);  
  3. double add(double, double);  
  4.  
  5. void main()  
  6. {  
  7. cout< cout< }  
  8.  
  9. int add(int x, int y)  
  10. {  
  11. return x+y;  
  12. }  
  13.  
  14. double add(double a, double b)  
  15. {  
  16. return a+b;  

該程序中,main()函數中調用相同名字add的兩個函數,前邊一個add()函數對應的是兩個int型數求和的函數實現,而后邊一個add()函數對應的是兩個double型數求和的函數實現。這便是函數的重載。

下面舉一個在參數個數上不相同的重載函數的例子:

  1. #include  
  2. int min(int a, int b);  
  3. int min(int a, int b, int c);  
  4. int min(int a, int b, int c, int d);  
  5.  
  6. void main()  
  7. {  
  8. cout< cout< }  
  9.  
  10. int min(int a, int b)  
  11. {  
  12. return a }  
  13.  
  14. int min(int a, int b, int c)  
  15. {  
  16. int t = min(a, b);  
  17. return min(t,c);  
  18. }  
  19.  
  20. int min(int a, int b, int c, int d)  
  21. {  
  22. int t1 = min(a, b);  
  23. int t2 = min(c, d);  
  24. return min(t1, t2);  

該程序中出現了C++ 函數重載,函數名min對應有三個不同的實現,函數的區(qū)分依據參數個數不同,這里的三個函數實現中,參數個數分別為2,3和4,在調用函數時根據實參的個數來選取不同的函數實現。

C++ 函數重載在類和對象應用比較多,尤其是在類的多態(tài)性中。在以后我們將碰到更多的在類型不同的函數重載,尤其是在結合類的繼承性和指針類型的不同,而這些都是我們以后用VC編程中經常要用到的。

【編輯推薦】

  1. 簡介學習C++總結之談
  2. C++函數進行學習探索總結筆記
  3. C++類庫設計的基本構思與方法
  4. C++語言真的還有市場價值?
  5. C++類庫設計的基本構思與方法
責任編輯:chenqingxiang 來源: NET130
相關推薦

2010-01-18 16:56:30

C++函數

2025-01-16 07:55:30

2010-01-15 17:18:57

C++源程序

2010-01-13 11:10:17

C++庫函數

2010-01-25 14:43:00

C++構造函數

2010-02-05 15:59:26

C++函數重載

2010-01-20 18:06:06

C++虛基類

2010-01-13 18:47:53

C++教程

2010-01-28 14:04:35

C++鏈表

2010-01-11 15:21:18

C++語言

2011-07-20 17:16:50

C++重載函數

2010-02-04 09:26:23

C++模板函數重載

2010-01-28 10:33:10

C++開發(fā)程序

2010-02-05 17:16:05

C++構造函數

2010-01-22 11:13:16

C++靜態(tài)

2010-01-28 13:35:41

調用C++函數

2009-05-26 09:31:00

C++重載覆蓋

2016-12-26 09:23:18

C++函數覆蓋

2010-01-11 11:16:37

C++編程

2010-01-11 15:36:08

C++代碼
點贊
收藏

51CTO技術棧公眾號