c++ - C++ 动态链接库中的回调函数
问题描述
我有一个 C++ 中的动态链接库。我想要做的是在库中声明一个回调函数,并将其留给用户在使用该库的代码中定义。伪代码示例:
//in library
void userDefinedFunction();
void libraryFunction() {
//do stuff
userDefinedFunction();
//do more stuff
}
//in user code
void userDefinedFunction() {
//user-specific code
}
这在现代 C++ 中可能吗?
解决方案
当然。您的库可以接受指向用户定义函数的函数指针或对用户给出的仿函数的引用。void libraryFunction() 只会使用它来调用用户函数。
推荐阅读
- arrays - 如何检查numpy数组中的元素字符串是否可以更改为整数,如果可以,请更改它?Python
- javascript - 使用 if 使价值动态化 - Vue
- node.js - 未捕获的 ReferenceError:缓冲区未在 React 中定义
- react-native - 为什么在 iOS 模拟器上为 react-native 运行应用程序后不显示 json 数据?
- linux - PowerOn 在 openbmc 中不使用 gpio 启用
- java - 如何在java中创建基于文本冒险的战斗方法?
- django - 如何在 Django 中使用在 GoogleColab 上训练的深度学习模型
- c - 我的程序有问题吗?我似乎只得到 0.0000 作为我的答案
- java - Spring Security 忘记身份验证或需要多次登录尝试
- .net-core - 没有空
Array 类中的方法?