当前位置: 首页 > news >正文

留号码的广告网站不需要验证码wordpress个人博客绅士模板

留号码的广告网站不需要验证码,wordpress个人博客绅士模板,营销网站建设培训,wordpress的标签有什么用文章目录 一、lambda表达式1.lambda的组成2.[capture-list] 的其他使用方法2.1混合捕捉 二、lambda表达式的使用场景1.替代仿函数 总结 一、lambda表达式 lambda表达式是C11新引入的功能#xff0c;它的用法与我们之前学过的C语法有些不同。 1.lambda的组成 [capture-list] … 文章目录 一、lambda表达式1.lambda的组成2.[capture-list] 的其他使用方法2.1混合捕捉 二、lambda表达式的使用场景1.替代仿函数 总结 一、lambda表达式 lambda表达式是C11新引入的功能它的用法与我们之前学过的C语法有些不同。 1.lambda的组成 [capture-list] (parameters) mutable - return-type { statement } [capture-list] : 捕捉列表该列表总是出现在lambda函数的开始位置编译器根据[]来 判断接下来的代码是否为lambda函数捕捉列表能够捕捉上下文中的变量供lambda 函数使用。 (parameters)参数列表。与普通函数的参数列表一致如果不需要参数传递则可以 连同()一起省略 mutable默认情况下lambda函数总是一个const函数mutable可以取消其常量 性。使用该修饰符时参数列表不可省略(即使参数为空)。 -returntype返回值类型。用追踪返回类型形式声明函数的返回值类型没有返回值时此部分可省略。返回值类型明确情况下也可省略由编译器对返回类型进行推 导。 {statement}函数体。在该函数体内除了可以使用其参数外还可以使用所有捕获到的变量 示例代码如下 int a 2;int b 3;auto func1 [](int a, int b)-int {return a b;};std::cout func1(a, b) std::endl;首先看示例代码 “[capture-list]”: 下面再讲这里需要记住是[]即便里面没有内容也不可以省略。 “(parameters)” :很像我们函数的参数列表而实际上在这里的作用也是如此。如果没有参数那么可以连同()一起省略 “-returntype” :-返回值类型一般都可以省略但是推荐不省略。 “{}”: 可以理解为函数体内部写自己想实现的功能。 示例代码如下 int a 2;int b 3;auto func1 [a, b]()-int {a; 编译报错b; 编译报错return a b;};auto func2 [a, b]()mutable-int {a; 运行通过b;return a b;};func2(); //调用func2std::cout func2: a - b std::endl;“[capture-list]”: 捕捉的是现有变量让它们能在函数体内运行。 func1 和 func2 唯一的区别就是有没有加mutable可变的。默认情况下lambda函数总是一个const函数mutable可以取消其常量 性。 所以func2使用mutable就可以改变函数体内a和b的值。 那么这里提出疑问外面的a和b的值是否被修改 - 不会 因为这里其实是一个传值拷贝如果你需要在lambda内部改变外面的ab可以使用引用 int a 2;int b 3;auto func1 [a, b]()mutable-int {a;b;return a b;};func1; //调用func1std::cout func1: a - b std::endl;auto func2 [a, b]()mutable-int {a;b;return a b;};func2; //调用func2std::cout func2: a - b std::endl;2.[capture-list] 的其他使用方法 “[]”:根据上下文全部以值传递捕捉变量 []:根据上下文全部以引用传递捕捉变量 int a 1;int b 2;double d 2.2;std::string str hello world;auto func1 []()mutable { //根据上下文全部以值传递捕捉变量std::cout a b d str std::endl;a 10;};func1();std::cout a: a std::endl std::endl;;auto func2 []()mutable { //根据上下文全部以引用传递捕捉变量std::cout a b d str std::endl;a 10;};func2();std::cout a: a std::endl; 2.1混合捕捉 int a 1;int b 2;double d 2.2;std::string str hello world;auto func1 [ , a]()mutable{//除a以引用传递捕捉其他根据上下文全部以值传递捕捉变量std::cout a b d str std::endl;a 10;};func1();std::cout a: a std::endl std::endl;;auto func2 [, a]()mutable{//除a以值传递捕捉其他根据上下文全部以引用传递捕捉变量std::cout a b d str std::endl;a 1;};func2();std::cout a: a std::endl; 二、lambda表达式的使用场景 1.替代仿函数 仿函数我们之前对于实现很多STL中的容器的排序都使用过应该不陌生而lambda表达式我们看来其实也跟一个函数差不多一样有参数一样有返回值一样能写函数体所以我们就可以使用lambda来取代仿函数 #includeiostream #includestring #includevector #includealgorithm #includefunctional struct Goods {Goods(std::string name, double price, size_t evaluation):_name(name),_price(price),_evaluation(evaluation) {}std::string _name;double _price;size_t _evaluation; };int main() {std::vectorGoods v {{ 苹果, 2.1, 5 },{ 香蕉, 3, 4 }, { 橙子, 2.2, 3 },{ 菠萝,1.5,4 }};std::sort(v.begin(), v.end(), [](const Goods s1, const Goods s2)-bool {return s1._name s2._name;}); // 字符串升序for (auto a : v){std::cout a._name - a._price - a._evaluation std::endl;}std::cout std::endl;std::sort(v.begin(), v.end(), [](const Goods s1, const Goods s2)-bool {return s1._name s2._name;}); // 字符串降序for (auto a : v){std::cout a._name - a._price - a._evaluation std::endl;}std::cout std::endl;std::sort(v.begin(), v.end(), [](const Goods s1, const Goods s2)-bool {return s1._price s2._price;}); // 价格升序for (auto a : v){std::cout a._name - a._price - a._evaluation std::endl;}std::cout std::endl;std::sort(v.begin(), v.end(), [](const Goods s1, const Goods s2)-bool {return s1._evaluation s2._evaluation;}); // 评价升序for (auto a : v){std::cout a._name - a._price - a._evaluation std::endl;}std::cout std::endl;return 0; } 总结 这些就是lambda表达式的全部内容lambda表达式还是十分有用的对于一些我们只需要运行一遍的函数或者是对象内传仿函数类型我们都可以使用使用lambda表达式。
http://www.pierceye.com/news/485422/

相关文章:

  • 网站流量图怎么做的wordpress单号管理系统
  • 生活服务网站建设方案天猫店铺装修做特效的网站
  • 公众号做视频网站会封吗开发微分销系统
  • 情侣博客网站模板下载kindeditor for wordpress
  • 广东网站备案进度查询长沙seo网络营销推广
  • 网站建设的一般过程包括哪些内容简单网页
  • 眉山市规划建设局网站专做网页的网站
  • 珠海网站建设开发ck网站
  • 医疗网站设计小程序开发制作费用
  • 德州网站建设网页设计实验报告总结
  • 易烊千玺个人网站入口什么是网站建设的建议
  • 哪个网站做供求信息app开发公司排行榜
  • 信誉好的广州外贸网站未来做哪些网站能致富
  • 运城推广型网站建设温州的网站建设公司
  • 怎么样做网站编程一般通过哪些行为来处理人际关系
  • 学校的网站开发过程wordpress公司展示网站
  • 贵港市建设局网站网站建设优化之优化关键字
  • 网站开发设计比较好的公司电子烟网站设计
  • 群辉 wordpress套件阜阳网站优化
  • 如何做网站哪个站推广网站自助建设平台
  • 西安大网站建设公司排名沈阳网络维护公司
  • 个人建立一个网站要多少钱乔拓云h5制作
  • 蒙阴网站建设百度指数排名
  • 视频网站如何推广做模具做什么网站
  • 关于旅游的网站建设论文广州外贸网站建设公司价格
  • 怎么给自己制作一个网站wordpress 中文摘要
  • 如何看网站的ftp服装网站建设策划书3000字
  • 无锡网站建设 网站制作常见的网站首页布局有哪几种
  • 网站研发PHP MYSQL网站开发全程实
  • 简约型网站国外做电商平台的网站还有什么