#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
void print(int &elem){cout<<elem<<" ";}
int main()
{
vector <int> V(8,10); //初始化数组v含有8个元素,每个元素的值为10
int n,start,count,paint;
for_each(V.begin(),V.end(),print);
cout<<endl;
cin>>n;
V.resize(n); //设置数组v的大小为n
while(cin>>start>>count>>paint)
{
fill_n(V.begin()+start-1,count,paint); //当start等于1时,从第一个开始赋值,赋值为paint
for_each(V.begin(),V.end(),print);
cout<<endl;
}
return 0;
}
运行结果如下:
v.resize(int n,element)表示调整容器v的大小为n,调整后的每个元素的值为element,默认为0,resize()会改变容器的容量和当前元素个数
fill函数的作用是:将一个区间的元素都赋予val值。函数参数:fill(first,last,val);//first为容器的首迭代器,last为容器的末迭代器,val为将要替换的值