回到首页 / 上级目录

匿名函数

函数是代码块,接收输入,产生输出。

除了继承 C 语言的函数结构外,C++ 增加了引用类型和匿名函数。

引用类型之前讲过,本文主要将匿名函数。

匿名函数

匿名函数也称 Lambda 表达式,C++ 允许代码中定义简单的函数对象,从而简化代码和提高代码可读性。

Lambda 表达式的基本语法格式如下:

[capture](parameters) -> return_type {
    // 函数体
}

其中,capture 指定了 Lambda 表达式访问外部作用域变量的方式;parameters 指定了 Lambda 表达式的参数列表;return_type 指定了 Lambda 表达式的返回值类型;函数体则是具体实现功能的代码。

需要注意的是,Lambda 表达式可以访问其所在作用域中的变量,并且可以通过 capture 指定访问方式。capture 可以是 = 或 &,分别表示按值和按引用访问变量。例如:

int x = 1, y = 2;
auto sum = [x, &y]() -> int {
    return x + y;
};