c++回调包含类函数回调和非类函数回调。

类函数回调,函数指针指向函数名称,需要带类作用域,调用时需要用到类指针。

如qt里面定义一个返回值为qbytearray的函数指针,

 typedef QByteArray (myThead::*Func_Construct)(QByteArray line);//定义函数指针

    QByteArray deviceStatus_construct(QByteArray);
QByteArray realData_construct(QByteArray line);
QByteArray dayRun_construct(QByteArray);
QByteArray monthCheck_construct(QByteArray line);
QByteArray flag_construct(QByteArray line);
QByteArray palarm_construct(QByteArray line);
QByteArray deviceDefine_construct(QByteArray line);
QByteArray staff_construct(QByteArray line);
QByteArray deviceStatus_construct_str(QString line); case e_deviceStatus:
pFunc = &myThead::deviceStatus_construct;
break;
case e_realData:
pFunc = &myThead::realData_construct;
break;
case e_dayRun:
pFunc = &myThead::dayRun_construct;
break;
case e_monthCheck:
pFunc = &myThead::monthCheck_construct;
break;
case e_flag:
pFunc = &myThead::flag_construct;
break;
case e_palarm:
pFunc = &myThead::palarm_construct;
break;
case e_deviceDefine:
pFunc = &myThead::deviceDefine_construct;
break;
case e_staff:
pFunc = &myThead::staff_construct; 回调:
QByteArray btLine = (this->*pFunc)(strLine.toUtf8());

非类指针则简单得多:

 typedef void (*Func)(int ,int )
void func1(int numA,int numB){
printf(numA+numB);
} void func2(int numA,int numB){
printf(numA - numB);
} int main(){
int numA = ;
int numB=;
Func pFunc = &func1;
pFunc (numA ,numB);
pFunc = &func2;
pFunc(numA,numB);
return0;
}

c++回调的更多相关文章

  1. JAVA回调机制(CallBack)详解

    序言 最近学习java,接触到了回调机制(CallBack).初识时感觉比较混乱,而且在网上搜索到的相关的讲解,要么一言带过,要么说的比较单纯的像是给CallBack做了一个定义.当然了,我在理解了回 ...

  2. 小兔JS教程(三)-- 彻底攻略JS回调函数

    这一讲来谈谈回调函数. 其实一句话就能概括这个东西: 回调函数就是把一个函数当做参数,传入另一个函数中.传进去的目的仅仅是为了在某个时刻去执行它. 如果不执行,那么你传一个函数进去干嘛呢? 就比如说对 ...

  3. iOS 键盘添加完成按钮,delegate和block回调

    这个是一个比较初级一点的文章,新人可以看看.当然实现这个需求的时候自己也有一点收获,记下来吧. 前两天产品要求在工程的所有数字键盘弹出时,上面带一个小帽子,上面安装一个“完成”按钮,这个完成按钮也没有 ...

  4. JAVA回调机制解析

    一.回调机制概述     回调机制在JAVA代码中一直遇到,但之前不懂其原理,几乎都是绕着走.俗话说做不愿意做的事情叫做突破,故诞生了该文章,算是新年的新气象,新突破!     回调机制是什么?其实回 ...

  5. 嵌入式&iOS:回调函数(C)与block(OC)传 参/函数 对比

    C的回调函数: callBack.h 1).声明一个doSomeThingCount函数,参数为一个(无返回值,1个int参数的)函数. void DSTCount(void(*CallBack)(i ...

  6. 嵌入式&iOS:回调函数(C)与block(OC)回调对比

    学了OC的block,再写C的回调函数有点别扭,对比下区别,回忆记录下. C的回调函数: callBack.h 1).定义一个回调函数的参数数量.类型. typedef void (*CallBack ...

  7. Java回调方法详解

    回调在维基百科中定义为: 在计算机程序设计中,回调函数,是指通过函数参数传递到其他代码的,某一块可执行代码的引用. 其目的是允许底层代码调用在高层定义的子程序. 举个例子可能更明白一些:以Androi ...

  8. Android开发之自定义组件和接口回调

    说到自定义控件不得不提的就是接口回调,在Android开发中接口回调用的还是蛮多的.在这篇博客开始的时候呢,我想聊一下iOS的自定义控件.在iOS中自定义控件的思路是继承自UIView, 在UIVie ...

  9. jQuery2.x源码解析(回调篇)

    jQuery2.x源码解析(构建篇) jQuery2.x源码解析(设计篇) jQuery2.x源码解析(回调篇) jQuery2.x源码解析(缓存篇) 通过艾伦的博客,我们能看出,jQuery的pro ...

  10. 给jquery-validation插件添加控件的验证回调方法

    jquery-validation.js在前端验证中使用起来非常方便,提供的功能基本上能满足大部分验证需求,例如:1.内置了很多常用的验证方法:2.可以自定义错误显示信息:3.可以自定义错误显示位置: ...

随机推荐

  1. UVA116 单向 DSP(多段图最短路)

    单向 DSP [题目链接]单向 DSP [题目类型]dp &题解: 紫书P271 这块的字典序排序我觉得挺厉害的,每次都把那3步sort一下,之后if (v< d[i][j]) 这块的小 ...

  2. Linux tar指令

    linux 下的命令真是太多了.最近在看<Linux Shell编程从初学到精通>一书.该书有468页,很可惜我并不是那种很有耐性一个例子一个例子地跟着做的人,最多在看到些不太清楚的地方会 ...

  3. C++模板元编程 - 1 基本数据类型和运算

    这是博客开通前几天做的,C++的模板没办法存方便的浮点数,算了. 基本类型的设计参考了vczh轮子叔模仿boost的MPL的设计. 话说template和typename写多了真是无限烦人啊,不得已定 ...

  4. Eclipse "IOConsole updater" has encounter a problem

    因为调试方便,把eclipse里的控制台输出调整为无限制了,结果各种log打了一夜居然把堆内存打爆了. 还是改回去吧. 在日志输出的状态下(貌似没日志的时候没法选)右键console的内容区域 -&g ...

  5. mac下反编译android apk

    所需要的工具 http://pan.baidu.com/disk/home#path=%252Fandroid%252Fdecompile%252Fapktool-all apktool用于将资源文件 ...

  6. jquery.form.js详细讲解

    现在大家在在表单提交的时候都不流行中间页面做跳转(比如发布成功的提示页面),或者说这样做会降低用户体验.所以一般都是采用ajax来提交,能看到这个页面的朋友,想必对ajax提交表单已经是很熟悉了. 如 ...

  7. Java多线程之简单的线程同步实例

    数据类: package Thread.MyCommon; public class Data { public int num = 0; public synchronized int getEve ...

  8. struts (七) 域模型

    1.域模型获取参数 domain Model 2. vo  value object  值对象 do  data object 数据对象 dto data transfer object  数据传输对 ...

  9. Java SE 第十一讲----面向对象特征之封装2

    1.如果一个类包含了属性跟方法,那么该类的每一个对象都具有自己的属性,但无乱一个类有多少个对象,这些对象共享同一个方法. 2.关于方法参数传递的总结: 对于Java中的方法参数传递,无论传递的是原生数 ...

  10. Inno Setup命令行安装卸载参数

    安装命令行参数安装程序接受可选的命令行参数.这些对于系统管理员以及其它程序调用安装程序时有用./SP- 在安装开始时禁用“这将安装... 你想继续吗?”的提示,当然,如果 [Setup] 段的指令 D ...