自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳細(xì)說(shuō)明C++中的C++函數(shù)

開(kāi)發(fā) 后端
C++函數(shù)是C++程序的主要組成部分,一個(gè)函數(shù)可以調(diào)用其他函數(shù)。在設(shè)計(jì)良好的程序中,每個(gè)函數(shù)都有特定的目的。。

在C++語(yǔ)言中,定義C++函數(shù)是通過(guò)一張?zhí)摵瘮?shù)表來(lái)實(shí)現(xiàn)的。簡(jiǎn)稱為V-Table。在這個(gè)表中,主是要一個(gè)類的虛函數(shù)的地址表,希望大家能夠?qū)W習(xí)參考。。

新術(shù)語(yǔ) 函數(shù)(function)是與主程序分開(kāi)的碼段,進(jìn)行預(yù)定的一個(gè)服務(wù)。函數(shù)是各種編程語(yǔ)言的重要部分,C++也不例外。最簡(jiǎn)單的函數(shù)不帶參數(shù),返回void(表示不返回任何東西)。

其它函數(shù)可能帶一個(gè)或幾個(gè)參數(shù)并可能返回一個(gè)值。函數(shù)名規(guī)則與變量名相同。圖1.5顯示了函數(shù)的構(gòu)成部分。新術(shù)語(yǔ) 參數(shù)(parameter)是傳遞給函數(shù)的值,用于改變操作或指示操作程度。

  1. result = multiply(2,5);//passing literal values   
  2.  
  3. result = multiply(x,y); //passing variables   
  4.  
  5. showResult(multiply(x,y));   
  6.  
  7. //return value used as a   
  8.  
  9. //parameter for another function   
  10.  
  11. multiply(x,y);//return value ignored  

這個(gè)程序的11到14行用標(biāo)準(zhǔn)輸入流cin向用戶取兩個(gè)數(shù)字,第15行調(diào)用C++函數(shù)將兩個(gè)數(shù)相乘,第16行調(diào)用showResult()函數(shù)顯示相乘的結(jié)果。注意主程序前面第5和第6行multiply()和showResult()函數(shù)的原型聲明。

原型中只列出了返回類型、函數(shù)名和函數(shù)參數(shù)的數(shù)據(jù)類型。這是函數(shù)聲明的最基本要求。函數(shù)原型中還可以包含用于建檔函數(shù)功能的變量名。例如,multiply()函數(shù)的函數(shù)聲明可以寫成如下:int multiply(int firstNumber,int secondNumber);這里函數(shù)multiply()的作用很明顯,但代碼既可通過(guò)說(shuō)明也可通過(guò)代碼本身建檔。

注意清單1.4中函數(shù)multiply()的定義(22到25行)在主函數(shù)定義碼段(8到20行)之外。C++函數(shù)定義中包含實(shí)際的函數(shù)體。這里的函數(shù)體是最基本的,因?yàn)楹瘮?shù)只是將函數(shù)的兩個(gè)參數(shù)相乘并返回結(jié)果。清單1.4中函數(shù)multiply()可以用多種方法調(diào)用,可以傳遞變量、直接數(shù)或其它函數(shù)調(diào)用的結(jié)果:

  1. int main(void); // same as above   
  2.  
  3. int main(int argc,char** argv);   
  4.  
  5. void main();   
  6.  
  7. void main(int argc, char** argv);  

注意 最后一例中沒(méi)有使用返回值。本例中調(diào)用函數(shù)multiply()而不用返回值沒(méi)什么道理,但C++編程中經(jīng)常忽略返回值。有許多函數(shù)是先進(jìn)行特定動(dòng)作再返回一個(gè)數(shù)值,表示函數(shù)調(diào)用的狀態(tài)。有時(shí)返回值與程序無(wú)關(guān),可以忽略不計(jì)。

如果將返回值忽略,則只是放棄這個(gè)值,而不會(huì)有別的危害。例如,前面的樣本程序中忽略了getch()函數(shù)的返回值(返回所按鍵的ASCII值)。函數(shù)可以調(diào)用其它函數(shù),甚至可以調(diào)用自己,這種調(diào)用稱為遞歸(recursion)。

這在C++函數(shù)中是個(gè)較復(fù)雜的問(wèn)題,這里先不介紹。新術(shù)語(yǔ) 遞歸(recursion)就是函數(shù)調(diào)用自己的過(guò)程。本節(jié)介紹的函數(shù)指的是C或C++程序中的獨(dú)立函數(shù)(獨(dú)立函數(shù)不是類的成員)。C++中的獨(dú)立函數(shù)可以和C語(yǔ)言中一樣使用,但C++函數(shù)進(jìn)一步深化,將在稍后介紹C++時(shí)介紹。

【編輯推薦】

  1. 簡(jiǎn)介學(xué)習(xí)C++總結(jié)之談
  2. 對(duì)C++庫(kù)函數(shù)進(jìn)行學(xué)習(xí)探索總結(jié)筆記
  3. C++類庫(kù)設(shè)計(jì)的基本構(gòu)思與方法
  4. C++語(yǔ)言真的還有市場(chǎng)價(jià)值?
  5. C++類庫(kù)設(shè)計(jì)的基本構(gòu)思與方法
責(zé)任編輯:chenqingxiang 來(lái)源: 計(jì)世網(wǎng)
相關(guān)推薦

2010-01-28 11:08:09

C++變量

2010-01-19 09:54:19

C++代碼

2010-01-26 10:42:26

C++函數(shù)

2010-01-13 13:27:00

C++優(yōu)化

2010-01-11 15:47:37

C++編譯

2010-01-08 16:10:59

C++語(yǔ)言

2010-01-28 13:27:12

C++類定義

2010-01-27 17:16:52

C++構(gòu)造函數(shù)

2010-01-11 09:56:07

C++編程實(shí)例

2011-07-20 17:16:50

C++重載函數(shù)

2010-01-18 13:54:28

函數(shù)

2010-01-12 15:46:29

測(cè)試C++ Test

2010-01-26 14:23:50

C++類

2011-07-20 17:54:02

C++

2011-07-20 15:58:53

C++引用

2010-01-14 17:42:47

CC++

2010-01-21 09:34:57

C++語(yǔ)法

2010-01-27 16:05:06

C++堆棧

2020-09-28 08:12:59

CC++時(shí)間

2010-01-21 14:07:14

CC++聲明
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)