函数指针动态绑定
来源:互联网 发布:淘宝好评80字以上 编辑:程序博客网 时间:2024/06/06 20:19
函数指针动态绑定
- 一个类通过不同的初始化参数来实例成不同的类
#include "stdafx.h"#include <iostream>#include <assert.h>using namespace std;class ClassFun;typedef void (ClassFun::*FunMake)();class ClassFun{public: enum MainType { FUN1, FUN2 }; explicit ClassFun(MainType type); ~ClassFun() = default; void fun();private: ClassFun() {}; // 限制使用 ClassFun& operator = (const ClassFun &) {}; // 限制使用 void initMethods(); FunMake m_pfFunMake = nullptr; void fun1() { cout << __FUNCTION__ << endl; }; void fun2() { cout << __FUNCTION__ << endl; }; MainType m_type;};ClassFun::ClassFun(MainType type){ m_type = type; initMethods();}void ClassFun::initMethods(){ switch (m_type) { case ClassFun::FUN1: m_pfFunMake = &ClassFun::fun1; break; case ClassFun::FUN2: m_pfFunMake = &ClassFun::fun2; break; default: break; }}void ClassFun::fun(){ assert(m_pfFunMake != nullptr); (this->*m_pfFunMake)();}int main(){ ClassFun classFun1(ClassFun::FUN1); classFun1.fun(); ClassFun classFun2(ClassFun::FUN2); classFun2.fun(); system("pause"); return 0;}
0 0
- 函数指针动态绑定
- 成员函数指针,动态绑定(vc平台)
- C++调用空指针对象的成员函数——静态绑定与动态绑定
- Virtual函数(动态绑定)
- 关于基类、派生类、对象、指针和虚函数、多态、 静态绑定、 动态绑定 纯虚函数、抽象类
- 线程池中利用函数指针对任务的动态绑定
- 虚函数与动态绑定
- C++中函数动态绑定
- 虚函数的动态绑定
- 虚函数与动态绑定
- C++虚函数动态绑定
- 虚函数的动态绑定
- this指针与静态绑定及动态绑定
- 二十九、多态、静态绑定与动态绑定、虚函数、虚表指针、object slicing与虚函数、overload、override 、overwrite
- C++ 空指针调用函数 静态绑定
- C++成员函数指针动太绑定
- 函数指针与函数模板及函数绑定器
- 虚函数的静态绑定和动态绑定
- 第1章 安装Nginx及第三方模块
- Leetcode 60. Permutation Sequence
- SDUST 第八次实验, 第九次作业
- Ubuntu环境下MySql卸载与配置问题
- Java线程(九):Condition-线程通信更高效的方式
- 函数指针动态绑定
- js 中文汉字、Unicode、ASCII互相转换函数代码
- 转载: int main() 与 void main()
- 那些年,大厂在用的技术(前端)
- Qt中添加背景图片的方法
- Java经典算法大全(二)
- table拖动行排序
- 对c和c++中内存的一点总结,很多来自网上
- TwoSum算法