#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; }lambda表达式常用用法
张小明
前端开发工程师
AI写论文大揭秘,这4款AI论文生成工具优缺点全知晓!
学术写作的救星:AI 论文写作工具推荐 是否还在为期刊论文的写作而烦恼?当面对大量文献、复杂的格式要求以及频繁的修改后,许多学术人士都会感到写作效率低下,这是个普遍问题!别担心,下面将为您推荐四款实测…
AI写论文的高效秘诀!4款AI论文生成神器,助力职称论文写作!
还在为撰写期刊论文、毕业论文或职称论文而烦恼吗?传统撰写过程中,面对浩如烟海的文献,如同大海捞针。复杂的格式要求让人感到无比困惑,反复的修改又让耐心耗尽,效率低下一直是学术工作者们的烦恼。但不用担心…
一个人的核心能力是什么?
一个人的核心能力是什么? 这个问题其实没有标准答案,因为“核心能力”会随着人生阶段、职业方向、生活处境而变化。 但如果要提炼出在绝大多数情况下都最有穿透力、长期价值最高的几项能力,大部分经历过不同人生阶段的人会趋向于以下这几个…
类为什么在前端框架用的越来越少了?
类(class)在前端框架里为什么越来越少用了? 这是一个非常真实的趋势,尤其在 React、Vue 3、Svelte 等现代前端框架的生态里,基于 class 的组件写法正在被逐渐边缘化,取而代之的是函数式组件 Hooks&#x…
【java日记】07:日志和git
HTTP响应码 信息响应 (100–199) 成功响应 (200–299) 重定向消息 (300–399) 客户端错误响应 (400–499) 服务端错误响应 (500–599) 日志 在resources目录下,创建文件logback-spring.xml <?xml version"1.0" encoding"UTF-8"?> <c…
建议收藏|专科生专用AI论文工具 —— 千笔写作工具
你是否曾为论文选题发愁?是否在写到一半时突然卡文,毫无头绪?又或者反复修改却总对结果不满意?专科生的论文写作之路,往往充满挑战。从开题到查重,每一个环节都可能让人焦头烂额。而如今,一款专…