函数generate()接收一个区间(有两个参数指定),并将每个元素设置为第三个参数返回的值,而第三个参数是一个不接受任何参数的函数对象。

头文件:#include <algorithm>

比如将容器内的元素填充为随机数,就这一这样编写:

std::vector<int> numbers(1000);
std::generate(numbers.begin(), numbers.end(), std::rand);

函数源码如下:

template<class _FwdIt,class _Fn0> inlinevoid generate(_FwdIt _First, _FwdIt _Last, _Fn0 _Func){    // replace [_First, _Last) with _Func()_DEBUG_RANGE(_First, _Last);_DEBUG_POINTER(_Func);_Generate(_Unchecked(_First), _Unchecked(_Last), _Func);}
template<class _FwdIt,class _Fn0> inlinevoid _Generate(_FwdIt _First, _FwdIt _Last, _Fn0 _Func){   // replace [_First, _Last) with _Func()for (; _First != _Last; ++_First)*_First = _Func();}

generate()函数将第三个函数对象返回的值,逐个赋予第一个参数和第二个参数所确定区间。

generate()函数的使用相关推荐

  1. desc excel 公式_Excel小技巧之Power Pivot Generate函数、高级DAX函数与常用筛选器函数...

    一.使用Generate函数创建信息叠加表 [目标:将姓名与月份组合,生成每个月份均有对应姓名对应的表格][基本思路:pivot中创建度量值,利用DAX函数创建链接回表后在EXCEL释放]       ...

  2. generate()函数

    关于generate()函数,在此我得把它与CI类库参考中的HTML表格类中的表格联系在一起,下面我们来看看这个例子,这里我写了一个测试控制器: class Student extends CI_co ...

  3. C++的generate函数

    generate函数用于为容器的各个元素赋值,其用法类似于for_each.只不过它的第三个参数必须是lambda函数或者函数,或者函数对象,即均有重载operator()()的类对象. 例子: ve ...

  4. python中generate函数_Python generate

    最新项目 根据美国人口普查数据或您 提供. 基本用途 使用censusname的最简单方法是使用generate方法.它 根据2000年的姓和名分布生成名称 人口普查.它有50/50的机会提供 fem ...

  5. python中generate函数_Generator 函数的含义与用法

    本文是<深入掌握 ECMAScript 6 异步编程>系列文章的第一篇. 异步编程对 JavaScript 语言太重要.JavaScript 只有一根线程,如果没有异步编程,根本没法用,非 ...

  6. C++/C--lambda表达式与函数对象【转载】

    文章目录 1. 概念 2 lambda表达式 3 lambda新特性 3.1 lambda捕捉表达式 3.2 泛型lambda表达式 3.3 函数对象 4 函数适配器 5 绑定器(binder) 5 ...

  7. linux dns函数,Linux DNS (1)的基本概念

    欢迎大家留言 ,有什么好的建议都可以说 我这个文章那里做的不到位,希望大家给予意见    我们共同进步.谢谢大家. DNS服务器 DNS是Domain Name System,它能够把形如www.la ...

  8. The Rust Programming Language - 第13章 Rust语言中的函数式语言功能:迭代器与闭包 - 13.1 可以捕获其环境的匿名函数

    13 Rust语言中的函数式语言功能:迭代器与闭包 函数式编程风格通常包括将函数作为另一个函数的参数.返回值,将函数作为值赋值给变量,以供后续执行 本章中我们将会介绍以下内容: 闭包:一个可以存储在变 ...

  9. Puppet函数介绍(十八)

    puppet函数 puppet函数主要用途是完成一个功能的集合,puppet的函数很多,只例举常用的几个. define函数 define函数主要用于创建自定义函数,define支持参数但不支持继承. ...

最新文章

  1. 【 FPGA 】时钟简介
  2. MongoDB最新4.2.7版本三分片集群修改IP实操演练
  3. image 闪烁 c# ajax updatepanel,Why doesn't asp:UpdatePanel refresh an Image?
  4. P4313 文理分科 网络流
  5. 【PyTorch】torch.clamp()==>将input的值限制在[min, max]之间,并返回结果到一个新张量
  6. RedisConf2018记录--Day 1 sessions
  7. php 管理mysql数据库_php管理mysql数据库类
  8. 6. 第三次 人工智能浪潮,有何不同?
  9. 读取图片测试_精品:固态硬盘进阶知识:寿命篇:(一)22TB地狱级写入测试...
  10. lru算法c语言实现单链表,操作系统之LRU算法 C语言链表实现
  11. 剑指offer十八之二叉树的镜像
  12. QT之TreeWidgetItem基本使用
  13. java企业员工管理系统_基于JavaWeb的企业员工信息管理系统的设计任务书
  14. 私募股权和VC有什么区别
  15. 小强学AI之 - 2你患癌症的概率(朴素贝叶斯)
  16. iOS开发实用技术之MapKit框架的使用
  17. 知乎书籍排行网站——建站始末
  18. 微信小程序:个人页面/我的页面/资料页面
  19. IELTS writing skills——学习笔记
  20. denied git permission_git使用中遇到的Permission to xxx denied to xxx问题如何解决

热门文章

  1. GPS 全球卫星导航定位系统
  2. Linux项目设计:斗罗大陆宣传系统、基于Linux系统的媒体播放器、可播放音视频图片(基于gec6818项目设计)
  3. 联想z5 Android 9.0,联想Z5官方自曝:搭载安卓9.0系统 “秒杀”MIUI
  4. java编写 每个苹果2.4元,第一天买2个苹果,第二天开始每天买前一天的2倍,直至一次购买的苹果个数达到不超过120的最大值,求每天平均花多少钱?
  5. vue服务端渲染 MySQL_Vue 服务端渲染
  6. hadoop yarn命令下载运行日志和结束yarn任务命令笔记
  7. 为Gerrit Code review添加verified标签
  8. 运维搭建邮件服务器,系统运维|如何在 Ubuntu 环境下搭建邮件服务器(二)
  9. linux脚本执行过程中被挂起,Linux学习笔记(八)——脚本执行的过程控制
  10. 查看服务器内存条的详细信息