MatrixCQY
首页
数学笔记
代码笔记
金融笔记
GitHub
首页
数学笔记
代码笔记
金融笔记
GitHub
  • 代码笔记

    • 代码笔记
    • C++ 教程

      • C++ 基础教程
      • C++ 面向对象编程 (OOP)
      • C++ 标准模板库 (STL)
      • C++ 内存管理
      • C++ 文件操作
      • C++ Lambda 表达式
      • C++ 高级特性
    • 数据结构与算法

      • 数据结构与算法简介
      • 线性表 (Linear List)
      • 栈与队列 (Stack & Queue)
      • 哈希 (Hashing)
      • 树与图 (Tree & Graph)
      • 排序算法 (Sorting Algorithms)
      • 查找算法 (Searching Algorithms)
      • 动态规划 (Dynamic Programming)
      • 贪心算法 (Greedy Algorithms)
    • SQL 教程

      • SQL 基础教程
      • SQL 查询 (Queries)
      • SQL 连接 (Joins)
      • SQL 约束 (Constraints)
      • SQL 规范化 (Normalization)
      • 视图与存储过程
      • SQL 高级教程
    • R 语言教程

      • R 语言简介
      • R 数据结构
      • R 流程控制与函数
      • R 数据导入与导出
      • R 统计分析基础
      • R 绘图 (Plotting)
    • Pandas 教程

      • Pandas 简介
      • Series 与 DataFrame
      • Pandas 数据分析
      • Pandas 时间序列分析
      • Pandas 数据透视与可视化

C++ Lambda 表达式

1. 简介

Lambda 表达式是 C++11 引入的匿名函数特性,常用于回调函数或算法参数。

2. 语法

[capture](parameters) -> return_type { body }
  • Capture: [] (无捕获), [=] (值捕获), [&] (引用捕获), [this] (捕获当前对象).

3. 示例

#include <vector>
#include <algorithm>
#include <iostream>

int main() {
    std::vector<int> v = {1, 5, 3, 4, 2};
    std::sort(v.begin(), v.end(), [](int a, int b) {
        return a > b; // 降序
    });
    
    int x = 10;
    auto add = [x](int y) { return x + y; };
    std::cout << add(5) << std::endl; // 15
    return 0;
}

推荐资源

  • CppReference: Lambda expressions
最近更新: 2026/2/15 04:15
Contributors: MatrixCQY
Prev
C++ 文件操作
Next
C++ 高级特性