文章目录
摘自:在C++中使用回调函数的几种方式
本文主要内容均摘自此文,看官可移步,未和此文作者取得联系,版权归原作者所有,只列个文章结构,方便了解文章内容,此处厚个脸皮,说原创了
在C++中使用回调函数的几种方式
一、主要方式
C++的特性是非常庞大的,其中实现回调的方式各种各样,再加上传值传引用什么的,非常复杂。这里只看常见的几种方式。
原作者大佬在第二部分中给出了每种方式的示例代码,可帮助理解。
1.1、函数指针
1.2、函数指针+用户数据指针
1.3、函数指针 + 在主对象里的用户指针
1.4、std::function
1.5、类对象
1.6、模板函数对象
二、例子
这里看几个例子,包含了一些常见的用法和常见的问题。
2.1 函数指针
2.2、函数指针+用户指针
2.3、函数指针+在主对象里的用户指针
2.4、std::function
2.5、类对象
2.6、模板函数对象
三、需要考虑的问题
四、总结
需要用到回调函数的时候,优先使用std::function,其次是带虚函数的类对象。如果都不好用,不妨先找找别人是怎么用的,再具体问题具体考虑。