在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回調函數。