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

门户网站建设美丽广州联享网站建设公司怎么样

门户网站建设美丽,广州联享网站建设公司怎么样,nas做网站需要备案吗,男女做羞羞的事网站#x1f436;博主主页#xff1a;ᰔᩚ. 一怀明月ꦿ ❤️‍#x1f525;专栏系列#xff1a;线性代数#xff0c;C初学者入门训练#xff0c;题解C#xff0c;C的使用文章#xff0c;「初学」C #x1f525;座右铭#xff1a;“不要等到什么都没有了#xff0c;才下… 博主主页ᰔᩚ. 一怀明月ꦿ  ❤️‍专栏系列线性代数C初学者入门训练题解CC的使用文章「初学」C 座右铭“不要等到什么都没有了才下定决心去做” 大家觉不错的话就恳求大家点点关注点点小爱心指点指点 c11中的lambda表达式 lambda表达式的基本格式 [capture list] (parameters) - return_type {// 函数体 } * capture-list用于捕获外部变量可以省略。捕获方式有三种     * []以引用方式捕获所有外部变量。     * []以值的方式捕获所有外部变量。     * [var1, var2, ...]指定需要捕获的外部变量列表可以使用 或 来指定捕获方式。 * parameter-list函数参数列表类似于普通函数的参数列表可以省略。 * return-type返回类型可以省略编译器可以自动推断。 * bodyLambda 函数体类似于普通函数体包含了执行的语句。 下面是一个简单的示例展示了如何在 C11 中使用 Lambda 表达式 不使用捕捉列表 capture-list #include iostreamint main() {// Lambda 表达式示例计算两个数的和//参数列表有两个整数auto add [](int a, int b) - int {return a b;};// 调用 Lambda 表达式int result add(3, 4);std::cout Result of add function: result std::endl;// Lambda 表达式示例打印 Hello World//参数列表为空auto printHello []() {std::cout Hello, World! std::endl;};// 调用 Lambda 表达式printHello();return 0; }使用捕捉列表 capture-list int main() {int x119,y120;coutxx:yyendl;//参数列表为空调用时不需要传递参数auto f1[x,y](){int temp;tempx;xy;ytemp;};//[]就是捕捉列表可以捕捉lambda表达式所在函数这里是main函数里的变量提供自己使用这里采用的是引用捕捉x,y因为我们要在lambda的函数体里修改x,y如果不需要修改x,y的值时可以采用值捕捉[x,y](){}f1();coutxx:yyendl;return 0; } 使用捕捉列表 capture-list的其他用法 int main() {int x 1,y 2,z 3;//以值的方式捕捉所有的变量auto f1[](){coutxyzendl;};//[]是捕捉所有变量的意思f1();//以引用的方式捕捉所有的变量auto f2[](){coutxyzendl;};//[]是捕捉所有变量的意思f2();//以值的方式捕捉所有的变量指定x,y以引用捕捉auto f3[,x,y](){coutxyzendl;};f3();return 0; } lambda的底层其实是一个仿函数 包装器 function function 是 C 标准库中的一个模板类用于封装可调用对象包括函数指针、函数对象、lambda 表达式等等使用时需要functional头文件。 function 的定义如下 templateclass R, class... Args class functionR(Args...);其中 R 是返回类型Args 是参数类型。通过这个定义你可以创建一个 function 对象它可以接受参数为 Args 类型返回类型为 R 类型的可调用对象。 事例1 void swap_func(int r1,int r2) {int temp;tempr1;r1r2;r2temp; }struct swap_2 {void operator()(int r1,int r2){int temp;tempr1;r1r2;r2temp;} }; int main() {int x119;int y120;auto lambdaswap[](int r1,int r2){int temp;tempr1;r1r2;r2temp;};//包装器指向swap_func函数functionvoid(int,int) f1swap_func;f1(x,y);coutx:x y:yendl;//包装器指向仿函数functionvoid(int,int) f2swap_2();//swap_2() 是一个函数调用操作符 operator() 被重载的类 swap_2 的匿名对象。在 C 中类的对象也可以被当作函数使用如果该类定义了一个函数调用操作符 operator()就可以像调用函数一样使用这个对象。在这种情况下swap_2() 返回的匿名对象会被当作函数使用具体来说它会被当作一个函数对象使用。f2(x,y);coutx:x y:yendl;//包装器指向lambda表达式functionvoid(int,int) f3lambdaswap;f3(x,y);coutx:x y:yendl;return 0; } 事例2 class Test { public:int add(int x,int y){return xy;}static int add_s(int x,int y){return xy;} }; int main() {//包装器指向静态成员函数//需要加域名functionint(int,int) f1Test::add_s;int sumf1(1,2);coutsumendl;//包装器指向普通成员函数//1.需要加域名//2.需要取地址//3.function需要多加一个类的指针因为成员函数的参数列表中隐含一个this指针functionint(Test*,int,int) f2Test::add;Test t1;int numf2(t1,1,2);coutnumendl; } function封装可调用对象包括函数指针、函数对象、lambda 表达式时一定保证参数类型是相同的 bind 在C中std::bind 是一个函数模板用于创建一个可调用对象该对象可以绑定到函数、成员函数、函数对象或者其他可调用对象并且可以指定部分或全部参数的值。std::bind 允许你在调用时提供缺少的参数或者在调用时提供额外的参数。 bind 的基本语法如下 template class F, class... Args /*unspecified*/ bind( F f, Args... args ); 其中 F 是可调用对象的类型args 是可调用对象的参数。bind 返回一个可调用对象该对象可以通过调用其 operator() 来调用绑定的函数或函数对象并传递给它们参数。 事例 class Test { public:int add(int x,int y){return xy;}static int add_s(int x,int y){return xy;} };int sub(int x,int y) {return x-y; }int main() {//调整参数顺序functionint(int,int) f1bind(sub,placeholders::_2,placeholders::_1);//bind第一个参数是函数名placeholders::_2,placeholders::_1可用来改变参入参数的顺序的int numf1(2,0);//顺序变为sub(0,2)coutnumendl;//调整参数个数functionint(int) f2bind(sub,100,placeholders::_1);//我们也可以在绑定的时候提前加入指定的参数例如这里的100这样我们调用sub时就只需要传一个参数int num1f2(1);coutnum1endl;//调整参数个数functionint(int,int)f3bind(Test::add,Test(),placeholders::_1,placeholders::_2);//绑定的Test是一个自定义类型的普通成员函数传函数名时需要加域名和这个Test()是Test的匿名对象需要传递给this指针int num2f3(2,3);coutnum2endl;return 0; }如果大家还有不懂或者建议都可以发在评论区我们共同探讨共同学习共同进步。谢谢大家
http://www.zqtcl.cn/news/30039/

相关文章:

  • 网站制作代理加盟网站出现乱码怎么办
  • 北京移动网站建设公司排名广州微网站建设机构
  • 有没有做汽车维修记录网站网站开发需要用到的技术
  • 类似12306网站开发做实验学编程的网站
  • 张槎杨和网站建设小程序代理平台
  • 淘宝推广网站怎么建设快递公司网页模板
  • 网站建设的文案宁波网站优化建站公司
  • 做设计必看十大网站虚拟主机评测
  • 成都哪家做网站比较好自己如何建立网站
  • 做书的封面网站怎么找项目
  • 网站后台如何上传图片外贸响应式网站设计
  • 建站节高端品牌衣服有哪些牌子
  • 网站设计论坛网址搜索器
  • 做网站线稿软件有哪些湛江人才网
  • 交互网站图通信建设网站
  • 网站建设丨金手指排名15网站适配移动端和PC端
  • 大庆网站开发汽车网页
  • 建立网站需要哪些东西网站建设设备
  • 做一小说网站要花多钱山东建设厅网站是什么
  • 北京燕化工程建设有限公司网站福田欧辉氢燃料电池客车
  • 如何分析一个网站的用户网站统计代码怎么添加
  • 池州商城网站开发做网站需要备案么
  • 十度公司做网站怎么样绍兴建设网站
  • 网站统计热力图展览展示设计有限公司
  • 网站图片有什么要求房地产门户网站建设
  • 南昌市 做网站的公司嘉兴网页设计
  • 个人电子邮件注册网站申请长沙手机网站首页设计公司
  • 本溪北京网站建设alisql wordpress
  • 深圳网站建设制作优化苏州网页制作招聘
  • 最专业的企业营销型网站建设公司南皮做网站