C ++ STL中的std :: fill()函数示例

C ++ STL std::fill()函数

fill()函数算法标头的库函数,用于将值分配给容器给定范围内的所有元素,它接受指向容器中开始和结束位置的迭代器以及要分配的值给定范围内的元素,并分配值。

注意:要使用fill()函数–包括<algorithm>头文件,或者您可以简单地使用<bits/stdc ++.h>头文件。

std::fill()函数的语法

    std::fill(iterator start, iterator end, value);

参数:

  • 迭代器开始,迭代器结束–这些是指向容器中范围的迭代器位置。

  • 值–要分配给所有元素的相同类型的值。

返回值: void –返回注释。

示例

    Input:
    vector<int> v(10);
    
    //用-1填充所有元素
    fill(v.begin(), v.end(), -1);
    
    Output:
    -1 -1 -1 -1 -1 -1 -1 -1 -1 -1

C ++ STL程序演示了std::fill()函数的使用

在此程序中,我们将填充向量的元素。

//C ++ STL程序演示使用
//std :: fill()函数
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;

int main(){
    //向量
    vector<int> v(10);

    //用-1填充所有元素
    fill(v.begin(), v.end(), -1);

    //打印矢量元素
    cout << "v: ";
    for (int x : v)
        cout << x << " ";
    cout << endl;

    //用100填充最初的3个元素
    fill(v.begin(), v.begin() + 3, 100);

    //打印矢量元素
    cout << "v: ";
    for (int x : v)
        cout << x << " ";
    cout << endl;

    //用200填充其余元素
    fill(v.begin() + 3, v.end(), 200);

    //打印矢量元素
    cout << "v: ";
    for (int x : v)
        cout << x << " ";
    cout << endl;

    return 0;
}

输出结果

v: -1 -1 -1 -1 -1 -1 -1 -1 -1 -1
v: 100 100 100 -1 -1 -1 -1 -1 -1 -1
v: 100 100 100 200 200 200 200 200 200 200

参考:C ++ std::fill()