C++工作笔记-简单工厂模式基础(用静态类传入函数指针,再进行调用)(仿大佬代码)
生活随笔
收集整理的這篇文章主要介紹了
C++工作笔记-简单工厂模式基础(用静态类传入函数指针,再进行调用)(仿大佬代码)
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
代碼如下:
#include <iostream> using namespace std;typedef void(*LPFUNCTION)(int data); void registerConfigParser(LPFUNCTION lpfn){lpfn(10); }class MyClass{ public:MyClass(LPFUNCTION lpfn){registerConfigParser(lpfn);} };#define STATIC_MY_CLASS(fn) \static MyClass myclass(fn)static void printData(int data){cout << "printData callled! the Data is:" << data << endl; }STATIC_MY_CLASS(printData);void main(){cout << "Main function called!\n";system("pause"); }運行截圖如下:
?
程序的邏輯:
全局靜態類STATIC_MY_CLASS(printData)
其實轉化為:
MyClass myclass(printData)
這里是因為用了
#define。這里要注意"\"這個符號,連接符號(大佬們都喜歡用這個)
?
在MyClass的構造函數中調用了
registerConfigParser函數,他里面有個參數lpfn,類型為函數指針LPFUNCTION
給他傳入int型的值,如lpfn(10)。
就可以進行調用了。
總結
以上是生活随笔為你收集整理的C++工作笔记-简单工厂模式基础(用静态类传入函数指针,再进行调用)(仿大佬代码)的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Qt文档阅读笔记-OpenGL Wind
- 下一篇: 认识死锁之生产者与消费者