Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c++匿名函数

作者:渚寒烟淡   发布日期:2026-02-07   浏览:32

#include <iostream>
#include <functional>

int main() {
    // 定义一个匿名函数(lambda表达式),它接受两个整数参数并返回它们的和
    auto add = [](int a, int b) -> int {
        return a + b;
    };

    // 使用匿名函数
    int result = add(5, 3);
    std::cout << "The result is: " << result << std::endl;

    // 匿名函数可以捕获外部变量
    int x = 10;
    auto multiplyByX = [x](int y) -> int {
        return x * y;
    };

    int multipliedResult = multiplyByX(4);
    std::cout << "Multiplied result is: " << multipliedResult << std::endl;

    // 匿名函数也可以捕获外部变量的引用
    int z = 20;
    auto modifyZ = [&z]() {
        z += 5;
    };

    modifyZ();
    std::cout << "Modified z is: " << z << std::endl;

    return 0;
}

解释说明:

  1. 定义匿名函数:使用 [] 来定义匿名函数(lambda 表达式)。例如,auto add = [](int a, int b) -> int { return a + b; }; 定义了一个接受两个整数参数并返回它们的和的匿名函数。
  2. 捕获外部变量:可以通过 [x] 捕获外部变量 x 的值。例如,auto multiplyByX = [x](int y) -> int { return x * y; }; 捕获了 x 的值并在匿名函数中使用。
  3. 捕获外部变量的引用:通过 [&z] 可以捕获外部变量 z 的引用,从而在匿名函数中修改它的值。例如,auto modifyZ = [&z]() { z += 5; }; 修改了 z 的值。
  4. 调用匿名函数:像普通函数一样调用匿名函数,例如 int result = add(5, 3);

希望这些示例能帮助你理解 C++ 中的匿名函数。

上一篇:c++ map 遍历

下一篇:https c++ openssl

大家都在看

c++闭包

c++单引号和双引号的区别

c++ 注释

c++如何判断素数

c++框架代码

c++格式化字符串

c++ orm框架

c++ find_if

c++ random函数用法

队列c++

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站