c++中callback回调函数怎么使用

c++
1057
2024/5/27 16:02:20
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

在C++中,callback回调函数可以通过函数指针、函数对象、lambda表达式等方式来实现。下面是一些使用callback回调函数的常见方法示例:

  1. 使用函数指针实现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;
}
  1. 使用函数对象实现callback回调函数:
#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;
}
  1. 使用lambda表达式实现callback回调函数:
#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回调函数。

辰迅云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读: Windows平台下C++的安全编程实践