回调函数就是一个通过函数指针调用的函数。如果你把函数的指针作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数。回调函数主要用来为不确定的事件、不确定的时间上进行的动作或响应。比如在C库里实现了一个算法叫做快速排序(qsort),为了能让库更加通用,不想在函数中嵌入排序逻辑,而让使用者来实现相应的逻辑,这时就可以使用回调函数方式来实现。如msvcrt.dll里的快速...
分类:
其他好文 时间:
2014-08-13 10:39:25
阅读次数:
311
#include "stdafx.h"typedef int (*func)(int,int);class data{public: data() { a=12; b=13; } ~data() { } static int setdata(int c,int d) { return c+d;...
分类:
编程语言 时间:
2014-08-11 14:33:12
阅读次数:
255
代表(delegate):它是C#语言里面的函数指针,代表可以指向某一个函数,在运行的时候调用这个函数的实现。下面来看看它的实现步骤:声明一个delegate对象。实现和delegate具有相同参数和返回值的函数实现(可以是静态和非静态的)。产生一个delegate对象的时候,把你刚刚实现的函数作为...
分类:
其他好文 时间:
2014-08-10 18:22:20
阅读次数:
237
数百条线程为何频繁断开,
回调函数为何迟迟没有结果,
mysql的数据为何屡遭黑手,
连环嵌套循环案,究竟何人所为?
分类:
其他好文 时间:
2014-08-09 21:02:59
阅读次数:
221
变量fp是一个函数指针,*fp就是该指针指向的函数,所以 (*fp)()就是调用该函数的方式,ANSI C标准允许程序员将上式简写为fp()。
在表达式(*fp)()中,*fp两侧的括号很重要,因为函数运算符()的优先级高于单目运算法*。...
分类:
其他好文 时间:
2014-08-09 16:00:48
阅读次数:
237
(m_pListener->*m_pfnSelector)(this);m_pListener是class的实例m_pFnSelector是存的函数的指针 这句可能要稍微解释下,其实也挺好懂的。首先前面这个括号就是对应的函数,后面的this就是参数,这个满足对函数指针的定义,即void (CCObj...
分类:
编程语言 时间:
2014-08-08 20:57:06
阅读次数:
284
看个小例子:char* fun1(){ char * p = (char*)malloc(100); p = "helloww"; return p;}void fun2(char *p){ p = "hello";}fun1 完成了指针的赋值和返回指针区域。 fun2 因为p的局部赋值而无法再函....
分类:
编程语言 时间:
2014-08-08 17:57:36
阅读次数:
269
指针函数,函数指针,typedef简化函数指针的使用,类中非静态成员函数和静态成员函数的调用。...
分类:
编程语言 时间:
2014-08-08 16:02:46
阅读次数:
195
如果指针作为形参,要注意是否希望这个指针作为返回值返回。例如,在链表的插入函数中void Insert(Node *head,Node *x);当head == NULL时,我们希望令head = x,此时实际上只改变了head的副本,head并没有改变,因此正确的函数原型应该是void Inser...
分类:
其他好文 时间:
2014-08-08 11:59:15
阅读次数:
200
我们都知道C++ class中有三种成员函数,static(静态的),nonstatic(非静态的),virtual(虚拟的)各种成员函数的指针各有区别,以下是一个完整的例子:(注意红颜色的区别)
class A
{
public:
static void staticmember(){cout
void nonstatic(){cout
virtual...
分类:
编程语言 时间:
2014-08-08 02:01:31
阅读次数:
249