在C++中,callback回调函数可以通过函数指针、函数对象、lambda表达式等方式来实现。下面是一些使用callback回调函数的常见方法示例:
#include <iostream>
void callbackFunction(int num) {
std::cout << "Callback called with value: " << num << std::endl;
}
void doSomething(void (*callback)(int)) {
int value = 42;
callback(value);
}
int main() {
doSomething(callbackFunction);
return 0;
}
#include <iostream>
class Callback {
public:
void operator()(int num) {
std::cout << "Callback called with value: " << num << std::endl;
}
};
void doSomething(Callback callback) {
int value = 42;
callback(value);
}
int main() {
Callback callback;
doSomething(callback);
return 0;
}
#include <iostream>
void doSomething(std::function<void(int)> callback) {
int value = 42;
callback(value);
}
int main() {
doSomething([](int num) {
std::cout << "Callback called with value: " << num << std::endl;
});
return 0;
}
这些示例演示了如何在C++中使用函数指针、函数对象和lambda表达式来实现callback回调函数。您可以根据自己的需求选择适合的方法来使用callback回调函数。