c++代码不用while(true)如何实现循环调用回调函数
时间: 2024-03-21 22:39:40 浏览: 51
C++OpenCV3源代码调用摄像头
可以使用递归函数来实现循环调用回调函数。具体实现方式如下:
假设有一个回调函数 `callback()`,需要循环调用它。
```
void callback() {
// 回调函数的实现
}
void loop_callback(int count) {
if (count <= 0) {
return;
}
callback();
loop_callback(count - 1);
}
```
上述代码中,`loop_callback()` 是一个递归函数,接受一个参数 `count` 表示需要循环调用回调函数的次数。在函数内部,首先判断 `count` 是否小于等于 0,如果是则直接返回,否则调用回调函数 `callback()`,然后递归调用 `loop_callback()`,同时将 `count` 减 1,直到 `count` 小于等于 0。
调用方式如下:
```
int main() {
loop_callback(10); // 循环调用回调函数 10 次
return 0;
}
```
这样就可以实现不使用 `while(true)` 循环调用回调函数的功能。
阅读全文