C++之函数指针实现函数回调

举报
chenyu 发表于 2021/07/27 00:08:00 2021/07/27
【摘要】 1、问题 C++很多地方需要函数指针回调,但是我理解还是不够深刻,今天再写了测试例子,方便后面更深入理解和记忆。     2、代码实现 A.h 文件实现 //// A.h// TestC++//// Created by 1111 on 17/8/17.// Copyright © 201...

1、问题

C++很多地方需要函数指针回调,但是我理解还是不够深刻,今天再写了测试例子,方便后面更深入理解和记忆。
 
 


2、代码实现

A.h 文件实现

   
  1. //
  2. // A.h
  3. // TestC++
  4. //
  5. // Created by 1111 on 17/8/17.
  6. // Copyright © 2017年 sangfor. All rights reserved.
  7. //
  8. #ifndef A_h
  9. #define A_h
  10. #include <iostream>
  11. class A
  12. {
  13. public:
  14. A(void){}
  15. ~A(void){}
  16. typedef void(*fun)(int);
  17. typedef void(*fun1)(void*, int);
  18. void callback(fun f, int n)
  19. {
  20. std::cout << "callback before" << std::endl;
  21. f(n);
  22. std::cout << "callback after" << std::endl;
  23. }
  24. void callback1(void *obj, fun1 f1, int n1)
  25. {
  26. object = obj;
  27. f = f1;
  28. n = n1;
  29. }
  30. void exec()
  31. {
  32. std::cout << "callback1 before" << std::endl;
  33. f(object, n);
  34. std::co

文章来源: chenyu.blog.csdn.net,作者:chen.yu,版权归原作者所有,如需转载,请联系作者。

原文链接:chenyu.blog.csdn.net/article/details/77284769

【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。