STL里面的replace算法怎么使用
时间: 2024-03-21 15:41:12 浏览: 16
`std::replace` 是 STL 提供的一个算法,用于将指定值替换为另一个值。它的函数原型如下:
```cpp
template<class ForwardIt, class T>
void replace(ForwardIt first, ForwardIt last, const T& old_value, const T& new_value);
```
各个参数的含义如下:
- `first`:要替换元素的范围的起始迭代器。
- `last`:要替换元素的范围的终止迭代器。替换操作不包括终止迭代器。
- `old_value`:指定要替换的元素。
- `new_value`:指定替换后的新元素。
下面是一个使用 `std::replace` 替换 `std::vector` 中指定元素的例子:
```cpp
#include <iostream>
#include <vector>
#include <algorithm>
int main() {
std::vector<int> vec = {1, 2, 3, 4, 5, 3};
std::replace(vec.begin(), vec.end(), 3, 6);
for (auto i : vec) {
std::cout << i << " ";
}
std::cout << std::endl;
return 0;
}
```
输出结果为:
```
1 2 6 4 5 6
```
可以看到,容器中的元素 3 被替换为了 6。