C++11新特性之四lambda函数.PDFVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
C++11新特性之四lambda函数.PDF

C++11新特性之四:lambda函数 张锦成 2015/10/15 Outline lambda函数的一些历史 C++11中的lambda函数 lambda函数与仿函数(函数对象) lambda函数与STL 1 lambda的一些历史 지원동기 1 lambda历史 20世纪30年代:lambda演算 1958年:基于lambda演算的LISP语言 1983年:C++在Bell Lab诞生 几种典型编程范型 面向过程编程: C/C++ 面向对象编程: C++/Java 函数式编程: Haskell, Ocaml 2 C++11中的lambda函数 지원동기 1 lambda初窥 lambda函数定义 参数列表为空可省略,除非有mutable修饰符 lambda函数默认是const函数 mutable可以取消lambda函数的常量性,此时参数列表不可省略,即使为空 没有返回值或者返回值类型可推导时可以省略 - return_type 捕捉列表不允许变量重复传递 lambda函数 lambda函数的思考 下面代码应该输出什么? 3 lambda函数与仿函数 지원동기 1 仿函数(函数对象) 仿函数实际上是一个类的对象 自定义了成员函数operator() 代码层面看起来和使用函数并无二样 仿函数(函数对象) lambda函数与仿函数的联系 lambda函数与仿函数的联系 仿函数是编译器实现lambda的一种方式,编译器把lambda函数转换为仿函数 lambda函数是仿函数的“语法糖” lambda函数与仿函数的联系 lambda函数不能完全代替仿函数,主要是因为lambda捕捉列表的限制 设计目的:就地书写,就地使用 4 lambda函数与STL 지원동기 1 lambda与STL lambda函数对C++11最大的贡献在STL库中 使用STL的算法更加容易了 以STL的for_each算法为例 以STL的for_each算法为例 References 1. 《深入理解C++11: C++11新特性解析与应用》第7章 2. C++11新特性: /doc/tutorial/show?id=1120

文档评论(0)

wendang_12 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档