函數存放在內存的代碼區域內,它們同樣有地址,我們如何能獲得函數的地址呢? 定義一個指向函數的指針用如下的形式,以上面的test()為例: int (*fp)(int a);//這里就定義了一個指向函數的指針 函數指針不能絕對不能指向不同類型,或者是帶不同形參的函數,在定義函數指針的時候我們很容易犯如下的錯誤。 int *fp(int a);//這里是錯誤的,因為按照結合性和優先級來看就是先和()結合,然后變成了一個返回整形指針的函數了,而不是函數指針,這一點尤其需要注意! 下面我們來看一個具體的例子: #include <iostream> typedef定義可以簡化函數指針的定義,在定義一個的時候感覺不出來,但定義多了就知道方便了,上面的代碼改寫成如下的形式: #include <iostream>
|
正在閱讀:C/C++中函數指針的含義C/C++中函數指針的含義
2005-03-04 10:17
出處:PConline
作者:管寧
責任編輯:xietaoming
鍵盤也能翻頁,試試“← →”鍵
302 Found
Powered by Tengine