C++中回调函数及函数指针的实例详解
作者:野牛程序员:2024-01-22 17:56:23 C++阅读 2685
在C++中,回调函数和函数指针都是灵活利用函数的方式,以下是它们的实例详解:
1. 函数指针的实例:
#include <iostream> // 函数指针的定义 typedef void (*FunctionPointer)(int); // 示例函数1 void PrintNumber(int num) { std::cout << "Number: " << num << std::endl; } // 示例函数2 void SquareNumber(int num) { std::cout << "Square: " << num * num << std::endl; } int main() { // 使用函数指针调用示例函数1 FunctionPointer funcPtr1 = PrintNumber; funcPtr1(5); // 使用函数指针调用示例函数2 FunctionPointer funcPtr2 = SquareNumber; funcPtr2(3); return 0; }
2. 回调函数的实例:
#include <iostream> // 回调函数的定义 void PerformOperation(int num, void (*callback)(int)) { // 调用回调函数 callback(num); } // 示例回调函数1 void PrintNumberCallback(int num) { std::cout << "Callback - Number: " << num << std::endl; } // 示例回调函数2 void SquareNumberCallback(int num) { std::cout << "Callback - Square: " << num * num << std::endl; } int main() { int value = 4; // 使用回调函数,执行示例回调函数1 PerformOperation(value, PrintNumberCallback); // 使用回调函数,执行示例回调函数2 PerformOperation(value, SquareNumberCallback); return 0; }
在这两个例子中,函数指针被用于引用不同的函数,而回调函数则被用作在另一个函数中进行操作时的参数。这种方式使得代码更加灵活和可扩展。
野牛程序员教少儿编程与信息学奥赛-微信|电话:15892516892

- 上一篇:C++ 通过指针实现多态实例详解
- 下一篇:C++ 虚函数的详解及简单实例