将矢量中的一系列元素替换为值

Replace a range of elements in a vector with a value

本文关键字:元素 替换 一系列      更新时间:2023-10-16

我想替换从向量内的位置a到位置b的任何值。

我阅读了有关替换函数的信息,但我必须指定要替换的值。我需要替换任何值。

例如,如果向量是:1 2 3 4 5 6 7 8 9 0 0 0 0 0 0,并且我想用另一个值替换从位置 0 到位置 8 的所有元素,如何使用该replace函数?

现在我正在使用 for 循环来做到这一点,但我的程序非常慢。

可能 std::fill 可以做你想要的。

int newValue = 0;
std::fill(std::begin(v), std::begin(v) + 8, newValue);