news 2026/4/30 11:33:59

lambda表达式常用用法

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
lambda表达式常用用法
#include <iostream> #include <vector> #include <algorithm> // lambda practice int main() { // [] 为存储需要的外部变量, 可分为值获传入与地址传入 // ()函数中的参数列表 // { } 函数体 auto square = [](int x) {return x * x; }; auto is_even = [](int x) {return x % 2 == 0; }; std::cout << "square = " << square(10) << std::endl; std::cout << "is_even = " << is_even(10) << std::endl;; int th = 10; auto bigger = [th](int x) { return x > th; }; auto inc = [&th]() {th++; }; inc(); std::cout << "bigger = " << bigger(20) << std::endl; std::cout << "inc th = " << th << std::endl; int seed = 0; auto gen = [seed]() mutable {return ++seed; }; std::cout << "gen seed = " << gen() << std::endl; std::cout << " seed = " << seed << std::endl; /* * mutable: 对类、结构体中的非静态成员变量有效。 * 作用: 允许某个成员变量在const成员函数中也可以被修改 */ auto add = [](auto a, auto b) { return a + b; }; std::cout << "add float = " << add(1.0, 6.3) << std::endl; std::cout << "add int = " << add(1, 7) << std::endl; // -> double 明确返回值类型 auto safe_div = [](double a, double b) -> double { return (b == 0) ? 0.0 : (a / b); }; std::cout << "safe_div = " << safe_div(1, 0) << std::endl; std::cout << "safe_div = " << safe_div(1, 2) << std::endl; std::vector v = {6, 2, 4, 7, 0, 55, 89, 34}; std::sort(v.begin(), v.end(), [](const auto& a, const auto& b) {return a < b; }); for(const auto& p:v) std::cout << p << std::endl; //transform 按照某种规则映射 std::transform(v.begin(), v.end(), v.begin(), [](int x) {return x * 2; }); for (const auto& p : v) std::cout << p << std::endl; }
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/25 6:13:50

SGMICRO圣邦微 SGM8052XS/TR SOP 运算放大器

特性 低成本轨到轨输出输入失调电压&#xff1a;8mV&#xff08;最大值&#xff09;高速 -3dB 带宽&#xff08;G 1&#xff09;&#xff1a;250MHz 压摆率&#xff1a;130V/μs 2V 阶跃下达到 0.1% 的建立时间&#xff1a;58ns电源电压范围&#xff1a;2.5V 至 5.5V输入电压…

作者头像 李华
网站建设 2026/4/22 23:17:41

搞技术的人员为什么通常当不了领导?

搞技术的人员为什么通常当不了领导&#xff1f; 这个现象确实很普遍&#xff0c;尤其在国内互联网、科技公司和传统IT企业里特别明显。原因不是“技术人员不行”&#xff0c;而是技术工作和领导工作的底层逻辑、考核标准、能力模型、时间分配、心理预期完全不同&#xff0c;甚…

作者头像 李华
网站建设 2026/4/29 15:37:56

探索Matlab/Simulink中的三相异步电机弱磁控制仿真模型

Matlab/Simulink仿真模型 三相异步电机弱磁控制 附赠模型指导 在电机控制领域&#xff0c;三相异步电机凭借其结构简单、运行可靠等优点&#xff0c;广泛应用于工业生产等各个领域。而弱磁控制技术则是提升三相异步电机在高速运行时性能的关键手段。今天&#xff0c;咱就来唠唠…

作者头像 李华
网站建设 2026/4/30 15:21:35

STAR-CCM+计算资源“弹性资源池”动态伸缩与智能调度策略

为什么说STAR-CCM的弹性资源池功能改变了计算流体力学的使用方式&#xff1f;作为一名使用STAR-CCM多年的技术人员&#xff0c;我最常听到用户抱怨的是&#xff1a;“我做仿真计算时&#xff0c;资源不够用&#xff01;” 或者是 “我刚排队几小时&#xff0c;结果任务还没跑完…

作者头像 李华