fill函数的作用是:将一个区间的元素都赋予val值。函数参数:fill(first,last,val);//first为容器的首迭代器,last为容器的末迭代器,val为将要替换的值。
例题:给你n个数,然后输入一些操作:start,end,paint。表示从start到end都赋予paint的值,并输出每一次操作后的数组状态。
代码:
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
void print(int &elem){cout<<elem<<" ";}
int main()
{
  vector <int> V;
  int n,startpos,endpos,paint;
  cin>>n;
  V.resize(n);
  while(cin>>startpos>>endpos>>paint)
  {
          fill(V.begin()+startpos-1,V.begin()+endpos,paint);
      for_each(V.begin(),V.end(),print);
      cout<<endl;
  }
  return 0;
}
fill_n函数的作用是:给你一个起始点,然后再给你一个数值count和val。把从起始点开始依次赋予count个元素val的值。
注意: 不能在没有元素的空容器上调用fill_n函数
例题:给你n个数,然后输入一些操作:start,count,paint。表示从start开始连续填充count个数字,paint为填充的数值。
代码:
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
void print(int &elem){cout<<elem<<" ";}
int main()
{
  vector <int> V;
  int n,start,count,paint;
  cin>>n;
  V.resize(n);
  while(cin>>start>>count>>paint)
  {
      fill_n(V.begin()+start-1,count,paint);
      for_each(V.begin(),V.end(),print);
      cout<<endl;
  }
  return 0;
}
再发一下关于fill_n函数的例子:
// fill_n example
#include <iostream>
#include <algorithm>
#include <vector>
using namespace std;
int main () {
vector<int> myvector (8,10);        // myvector: 10 10 10 10 10 10 10 10
fill_n (myvector.begin(),4,20);     // myvector: 20 20 20 20 10 10 10 10
fill_n (myvector.begin()+3,3,33);   // myvector: 20 20 20 33 33 33 10 10
cout << "myvector contains:";
for (vector<int>::iterator it=myvector.begin(); it!=myvector.end(); ++it)
  cout << " " << *it;
cout << endl;
return 0;
}

fill函数 神奇的迭代器相关推荐

  1. 【note】fill函数和memset函数的区别和使用

    memset函数 按照字节填充某字符 在头文件<cstring>里面 fill函数 按照单元赋值,将一个区间的元素都赋同一个值 在头文件<algorithm>里面 注意: fi ...

  2. 泛型算法(lambda表达式、function类模板、bind函数适配器、迭代器类别、链表数据结构独有的算法)

    文章目录 概念 find()函数 迭代器令算法不依赖于容器 但算法依赖于元素类型的操作 算法永远不会执行容器的操作 只读算法 accumulate()函数 从两个序列中读取元素(equal函数为例) ...

  3. ES6基础之Array.fill函数

    引子 关注「时事」的同学都会注意到,ES6和TypeScript是时下「投资」的热门.作为一位老同学,我也注意到这一点,不断收集一些小东东,以备不时之需. 正题 本文中记录的是ES6为Array增加的 ...

  4. R语言数据纵向合并rbind函数实战(以及rbind.fill函数合并两个数据列不同的dataframe)

    R语言数据纵向合并rbind函数实战(以及rbind.fill函数合并两个数据列不同的dataframe) 目录

  5. matlab中fill函数的使用方法

    填充的二维多边形 fill 函数创建彩色多边形. 语法 ①fill(X,Y,C) fill(X,Y,C) 根据 X 和 Y 中的数据创建填充的多边形(顶点颜色由 C 指定).C 是一个用作颜色图索引的 ...

  6. es6 async函数的异步迭代器

    async函数的异步迭代器 <迭代器>一章说过,Iterator 接口是一种数据遍历的协议,只要调用迭代器对象的next方法,就会得到一个对象,表示当前遍历指针所在的那个位置的信息.nex ...

  7. C++STL之fill()函数使用方法

    fill()函数可以把数组或容器中的某一段区间赋为某个相同的值.与memset有近似之处. 测试代码: #include #include using namespace std; int main( ...

  8. 【C++】fill函数,fill与memset函数的区别

    memset函数 按照字节填充某字符 在头文件<cstring>里面 fill函数 按照单元赋值,将一个区间的元素都赋同一个值 在头文件<algorithm>里面 因为mems ...

  9. fill函数与memset函数比较

    [C++]fill函数,fill与memset函数的区别 1,memset函数 按照字节填充某字符 在头文件< cstring >里面 2,fill函数 按照单元赋值,将一个区间的元素都赋 ...

  10. fill()函数的用法

    fill()函数参数:fill(first,last,val);  // first 为容器的首迭代器,last为容器的末迭代器,val为将要替换的值. 举例: int a[5];for(int i ...

最新文章

  1. 一起走进自然语言处理的世界
  2. 聊聊flink的StateTtlConfig
  3. 『中级篇』Minikube快速搭建K8S单节点环境(61)
  4. mysql的总结7--存储过程
  5. kaldi语音识别实战pdf_语音识别相关工具和资料分享
  6. C语言再学习-- readelf、objdump、nm使用详解
  7. C++使用链表实现stack堆栈(附完整源码)
  8. 20线程测试cpu性能软件,评测平台介绍、CPU多线程性能测试
  9. python文本编辑器报错_notepad++编辑器中运行python程序时需要注意的编码格式
  10. 用python求期望_Python——EM(期望极大算法)教学(附详细代码与注解)
  11. 数据结构专题(一):1.1顺序表初始化
  12. 新媒体活动策划方案要点
  13. NGOD client 完成感想
  14. 素数五个为一行的_帕斯卡三角形与素数
  15. Outlook连接Gmail不成功可以试试以下方法
  16. 代码随想录第十三天 LeetCode 239、347(队列)
  17. 魔方机器人之SVM算法识别魔方颜色
  18. msde2000修改服务器名,MSDE2000数据库怎么修改SA口令?
  19. 怎么在cmd中运行python脚本_cmd中运行python脚本智能使用流程
  20. Spark 读 CSV格式文件 ,报错UnicodeDecodeError: 'utf8' codec can't decode byte 0xca in position 17: invalid c

热门文章

  1. 类库从自带的配置文件中获取信息(DLL文件 获取 DLL文件自带的配置信息) z...
  2. 医学遗传学词汇英语术语英文(Glossary) 5
  3. getmenuiteminfo无法读取内存_简单科普系列—内存为什么需要组双通道原理及其作用...
  4. mac 向mysql输入 数据_(mac系统下)mysql 入门
  5. python判断是否含有0_Python:判断文本中的用户名在数据库中是否存在,存在返回1,不存在返回0...
  6. 学习webpack系列之四 ---- (学习开发环境)
  7. mybatis自增主键回填
  8. asp.net中引入外部js文件,容易产生中文乱码
  9. TiDB 源码阅读系列文章(二十)Table Partition
  10. springCloud Finchley 实战入门(基于springBoot 2.0.3)【五 Hystrix 服务容错保护】