函数指针与指针函数(C++工厂设计最喜欢用这个)
生活随笔
收集整理的這篇文章主要介紹了
函数指针与指针函数(C++工厂设计最喜欢用这个)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
在看開源項目的時候,發現C++搞工廠設計都喜歡用這個。
下面來給出這方面的例子(大學里面沒學過)
函數指針:
類型一:
代碼如下:
#include <iostream> using namespace std;int max(int x, int y){return (x > y ? x : y); }void main(){int(*funPr)(int, int) = max;cout << "the max is " << (*funPr)(1, 100) << endl;system("pause"); }其中int (*funPr)為函數指針,(int,int)為其參數,
來看局部變量圖:
類型二:
使用typedef(這種用得最多,大佬都喜歡用這個來搞工廠)
代碼如下:
#include <iostream> using namespace std;int max(int x, int y){return (x > y ? x : y); }typedef int(*funPr)(int x, int y);void main(){funPr fun= max;cout << "The max is " << fun(1, 100) << endl;system("pause"); }局部變量如下:
運行截圖都為:
既然學了函數指針,那么來科普下指針函數:
通過這個可以發現,這個玩意原來就是返回函數的指針
也就是經常寫的
int *pfun(int,int)
返回int*的函數
總結
以上是生活随笔為你收集整理的函数指针与指针函数(C++工厂设计最喜欢用这个)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Linux学习笔记-Linux下的设备文
- 下一篇: VS工作笔记-C++在release模式