Функция fill
Функция fill заполняет заданным значением
все элементы диапазона [first, last). Первым
параметром мы передаем итератор на начало диапазона,
вторым - итератор на конец диапазона (не включая его),
а третьим - значение, которым нужно заполнить элементы.
Синтаксис
fill(first, last, value)
Пример
Давайте заполним все элементы вектора значением
0:
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector<int> v = {1, 2, 3, 4, 5};
fill(v.begin(), v.end(), 0);
for (int el : v) {
cout << el << " ";
}
return 0;
}
Результат выполнения кода:
0 0 0 0 0
Пример
Давайте заполним только часть вектора, начиная с третьего элемента и до конца:
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
vector<int> v = {1, 2, 3, 4, 5};
fill(v.begin() + 2, v.end(), 9);
for (int el : v) {
cout << el << " ";
}
return 0;
}
Результат выполнения кода:
1 2 9 9 9
Пример
Давайте заполним массив символов значением
'a':
#include <iostream>
#include <algorithm>
using namespace std;
int main()
{
char arr[] = {'x', 'y', 'z', 'w', 'q'};
fill(arr, arr + 5, 'a');
for (char el : arr) {
cout << el << " ";
}
return 0;
}
Результат выполнения кода:
"a a a a a"