导航
都需要加头文件#include < numeric>
1.accumulate() //容器中数据累加和
2.fill() //往容器中填充指定的数据
——————————————————————————————————————
1.accumulate() 函数使用
原型:accumulate(iterator beg,iterator end,val)
iterator beg:迭代器初始位置
iterator end:迭代器末尾位置
val:要进行累加的初始值
注意:有返回值
#include <iostream> using namespace std; #include <vector> #include <numeric> void test() { vector<int> v; for(int i=1;i<=100;i++) v.push_back(i); //**************************** int total = accumulate(v.begin(),v.end(),0); //有返回值,并且第三个参数为起始值 //**************************** cout<<"总和为:"<<total<<endl; //输出:总和为:5050 } int main() { test(); return 0; }
——————————————————————————————————————
2.fill()函数使用
函数原型:fill(iterator beg,iterator end,val)
iterator beg:迭代器初始位置
iterator end:迭代器末尾位置
val:向容器中填充的数据
注意:填充前应当分配空间
#include <iostream> using namespace std; #include <vector> #include <numeric> #include <algorithm> void print(int val) { cout<<val<<" "; } void test() { vector<int> v; v.resize(10); //填充前先开辟数据 //**************************** fill(v.begin(),v.end(),6); //进行向容器填充 //**************************** for_each(v.begin(),v.end(),print); } int main() { test(); return 0;