成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

幾分鐘教您玩轉C++中函數指針

開發 后端
本文詳細介紹C++函數指針相關問題,函數名可以通過函數指針加以保存,也可以自定義若干個函數名,這就是函數指針數組。

所謂的C++函數指針,函數指針是指向函數的指針變量函數指針有兩個用途:調用函數和做函數的參數,下面詳細解讀C++函數指針的說明方法。

由第一個字節(buffer[0])標識該數據的類型,共有256(28 )種可能性。我的任務是必須對每一種可能出現的數據類型都要作處理,并且我的模塊包含若干個函數,在每個函數里面都要作類似的處理。若按通常做法,會寫出如下代碼:

  1. void MyFuntion( char* buffer, int length )  
  2. {  
  3.     __int8 nStreamType = buffer[0];  
  4.  
  5.     switch( nStreamType )  
  6.     {  
  7.        case 0:  
  8.  
  9.            function1();  
  10.  
  11.            break;  
  12.  
  13.        case 1:  
  14.  
  15.        ......  
  16.  
  17.        case 255:  
  18.  
  19.            function255();  
  20.  
  21.            break;  
  22.  
  23.      }  
  24.  

如果按照這種方法寫下去,那么在我的每一個函數里面,都必須作如此多的判斷,寫出的代碼肯定很長,并且每一次處理,都要作許多次判斷之后才找到正確的處理函數,代碼的執行效率也不高。針對上述問題,我想到了用C++函數指針數組的方法解決這個問題。

函數指針的概念,在潭浩強先生的C++語言程序設計這本經典的教程中提及過,在大多數情況下我們使用不到,也忽略了它的存在。函數名實際上也是一種指針,指向函數的入口地址,但它又不同于普通的如int*、double*指針,看下面的例子來理解C++函數指針的概念:

  1. 1 int funtion( int x, int y );  
  2. 2 void main ( void )   
  3.  {  
  4. 3    int (*fun) ( int x, int y );  
  5. 4    int a = 10b = 20;  
  6. 5    function( a, b );  
  7. 6    fun = function;  
  8. 7    (*fun)( a, b );  
  9. 8     ……  
  10.   } 

語句1定義了一個函數function,其輸入為兩個整型數,返回也為一個整型數(輸入參數和返回值可為其它任何數據類型);語句3定義了一個函數指針,與int*或double*定義指針不同的是,C++函數指針的定義必須同時指出輸入參數,表明這是一個函數指針,并且*fun也必須用一對括號括起來;

【編輯推薦】

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

2010-01-21 09:46:24

C++程序

2010-01-06 13:39:51

擴展Jquery的Js

2010-01-12 10:28:58

C++復雜性

2010-03-10 13:55:35

交換機故障

2010-01-12 18:20:31

Visual C++

2010-02-23 14:19:30

Python目錄操作

2010-03-01 18:13:22

Python程序

2010-01-26 14:53:43

C++

2010-03-04 10:01:01

Android基本組件

2009-12-21 13:51:54

ADO.NET處理

2013-07-02 09:58:38

ClojureClojure教程

2016-09-30 15:13:01

Python代碼

2010-01-20 10:40:44

C++Test

2009-12-29 09:01:46

ADSL斷線

2010-01-06 15:35:06

JSON對象

2024-12-03 15:38:14

2010-01-27 09:46:32

C++Builder開

2017-08-03 17:30:26

戴爾IoT設備

2009-11-25 17:22:12

路由器安裝

2024-04-19 09:37:49

Ollama大語言模型開源
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 日本三级在线视频 | 日韩在线视频免费观看 | 欧美成人精品 | 999久久久| 日韩亚洲一区二区 | 国产成人高清在线观看 | 日韩欧美亚洲 | 97视频精品 | 99精品免费视频 | 色资源在线| 一级片在线观看视频 | 亚洲国产欧美日韩 | 欧美日韩高清免费 | 国产视频黄色 | 九九热国产精品视频 | 午夜免费观看体验区 | 国产激情综合五月久久 | 99精品视频在线 | 国产成人精品久久二区二区91 | 日韩成人免费 | 欧美日韩在线一区二区 | 国产精品国产三级国产aⅴ原创 | 国产成人在线一区二区 | 国产网站在线免费观看 | 99视频在线免费观看 | 在线视频a | 99视频免费看 | 久草色视频| 四虎影视免费观看 | 成人亚洲一区 | 亚洲精品一区二区三区蜜桃久 | 日韩天堂av| 欧美一区两区 | 亚洲精品一区二区三区在线观看 | 一区二区三区四区av | 欧美日本亚洲 | 淫片一级国产 | 亚洲第一av网站 | 久久精品伊人 | 国产精品久久久久久久 | 九九九视频在线 |