42STL之算术和生成算法

STL之算术和生成算法

  • STL之算术和生成算法
    • accumulate
    • fill
    • 综合代码

1.accumulate()

accumulate: 对指定范围内的元素求和,然后结果再加上一个由val指定的初始值。
#include

        vector<int> vecIntA;
        vecIntA.push_back(1);
        vecIntA.push_back(3);
        vecIntA.push_back(5);
        vecIntA.push_back(7);
        vecIntA.push_back(9);
        int iSum = accumulate(vecIntA.begin(), vecIntA.end(), 100);     //iSum==125

2.fill()

fill: 将输入值赋给标志范围内的所有元素。

vector<int> vecIntA;
vecIntA.push_back(1);
vecIntA.push_back(3);
vecIntA.push_back(5);
vecIntA.push_back(7);
vecIntA.push_back(9);
fill(vecIntA.begin(), vecIntA.end(), 8);        //8, 8, 8, 8, 8

3.综合代码

void main55_accumulate()
{
    vector<int> v1;
    v1.push_back(1);
    v1.push_back(3);
    v1.push_back(5);
    int tmp = accumulate(v1.begin(), v1.end(), 100);
    cout << tmp << endl;
}

void main56_fill()
{
    vector<int> v1;
    v1.push_back(1);
    v1.push_back(3);
    v1.push_back(5);

    fill(v1.begin(), v1.end(), 8);
    printV(v1);

}

你可能感兴趣的:(C++)