function函数指针和lamada的[]和[=]注意事项

news/2025/1/16 21:49:41/

在工作的过程中,lamda表达式的

重点:

1.function对象存储函数指针。

2.lamada表达式&和=捕捉的方式

lamda传入引用&,导致作用域消失,最终报错

std::function<void()> pFun;
void GetNum1(const std::function<void()>& fun)
{pFun = fun;
}void fun()
{if (pFun){pFun();}
}void GetNum(const std::function<void(int)> fun1)
{//传入&auto Data = [&]() {fun1(10); };GetNum1(Data);
}void Get(int num)
{std::cout << num << std::endl;
}int main() {GetNum(Get);fun();return 0;
}

lamda传入赋值=,正确反馈

std::function<void()> pFun;
void GetNum1(const std::function<void()>& fun)
{pFun = fun;
}void fun()
{if (pFun){pFun();}
}void GetNum(const std::function<void(int)> fun1)
{//传入&auto Data = [=]() {fun1(10); };GetNum1(Data);
}void Get(int num)
{std::cout << num << std::endl;
}int main() {GetNum(Get);fun();return 0;
}


http://www.ppmy.cn/news/1187096.html

相关文章

常用排序算法的理解

1.插入排序 插入排序的思想是将一个记录插入到已经排好序的有序表中&#xff0c;从而形成一个新的、记录数加1的有序表。在其实现过程使用双层循环&#xff0c;外层循环是进行插入的次数&#xff08;也可以理解为比较的轮数&#xff09;&#xff0c;内层循环是当前记录查找插入…

java毕业设计基于springboot+vue航空公司电子售票系统-机票预订系统

项目介绍 通篇文章的撰写基础是实际的应用需要&#xff0c;然后在架构系统之前全面复习大学所修习的相关知识以及网络提供的技术应用教程&#xff0c;以远程教育系统的实际应用需要出发&#xff0c;架构系统来改善现远程教育系统工作流程繁琐等问题。不仅如此以操作者的角度来…

npm install报错,解决记录

第一步&#xff1a;检查和安装 我这里建议检查 1.node.js版本是否和前使用版本一致 2.npm版本是否和前使用版本一致 3.vue版本是否和前使用版本一致 4.vue脚手架是否和前使用版本一致 5.npm镜像是否和前使用版本一致 1.检查版本 【node版本】 命令&#xff1a;node -v 结果&a…

Leetcode 557 反转字符串中的单词 III 简单

题目 - 点击直达 1. 557 反转字符串中的单词 III 简单1. 题目详情1. 原题链接2. 题目要求3. 基础框架 2. 解题思路1. 思路分析2. 时间复杂度3. 代码实现 1. 557 反转字符串中的单词 III 简单 1. 题目详情 给定一个字符串 s &#xff0c;你需要反转字符串中每个单词的字符顺序…

恒驰服务 | 华为云数据使能专家服务offering之大数据建设

恒驰大数据服务主要针对客户在进行智能数据迁移的过程中&#xff0c;存在业务停机、数据丢失、迁移周期紧张、运维成本高等问题&#xff0c;通过为客户提供迁移调研、方案设计、迁移实施、迁移验收等服务内容&#xff0c;支撑客户实现快速稳定上云&#xff0c;有效降低时间成本…

3.6每日一题(线性方程求通解)

1、判断类型选择方法&#xff1a;发现以y为未知函数&#xff0c;以x为自变量&#xff0c;不符合我们学过的类型 2、此时有两种方法&#xff1a; &#xff08;1&#xff09;x 与 y 对调&#xff0c;此时 x 为未知函数&#xff0c;y 为自变量 &#xff08;2&#xff09;变量代换…

【Tomcat】如何在idea上部署一个maven项目?

目录 1.创建项目 2.引入依赖 3.创建目录 4.编写代码 5.打包程序 6.部署项目 7.验证程序 什么是Tomcat和Servlet? 以idea2019为例&#xff1a; 1.创建项目 1.1 首先创建maven项目 1.2 项目名称 2.引入依赖 2.1 网址输入mvnrepository.com进入maven中央仓库->地址…

在CentOS上用yum方式安装MySQL8过程记录

此文参考官方文档一步一步记录安装到正常运行全过程 安装环境&#xff1a;centos7 mysql版本&#xff1a;8.0.35 安装过程主要参考下面两边文章&#xff1a; 1.官方文档 https://dev.mysql.com/doc/refman/8.0/en/linux-installation-yum-repo.html 2.linux yum安装mysql8 安…