如何在遍历完成之后执行函数
时间: 2023-12-13 22:02:43 浏览: 26
可以使用回调函数的方式,在遍历完成后执行指定的函数。具体实现可以在遍历函数中添加一个函数指针参数,用于指向回调函数,遍历结束后调用该函数指针指向的函数即可。
以下是一个示例代码:
```c++
#include <iostream>
#include <vector>
void printVector(std::vector<int>& nums, void (*callback)()) {
for (auto it = nums.begin(); it != nums.end(); ++it) {
std::cout << *it << std::endl;
}
callback(); // 遍历完成后执行回调函数
}
void myCallback() {
std::cout << "遍历完成,执行回调函数" << std::endl;
}
int main() {
std::vector<int> nums = {1, 2, 3, 4, 5};
printVector(nums, myCallback); // 传入回调函数指针
return 0;
}
```
在上面的示例代码中,我们定义了一个`printVector`函数,该函数接受一个整数向量和一个函数指针作为参数。函数内部遍历整数向量并打印每个元素,然后调用回调函数指针指向的函数。在`main`函数中,我们定义了一个整数向量和一个回调函数`myCallback`,然后调用`printVector`函数并传入这两个参数,从而实现了在遍历完成后执行回调函数的功能。