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

c++ std::function

作者:看悲伤的曲   发布日期:2026-05-11   浏览:114

#include <iostream>
#include <functional>

// 定义一个函数,接受 std::function 作为参数
void callFunction(std::function<void(int)> func, int value) {
    func(value);
}

int main() {
    // 使用 lambda 表达式创建一个 std::function 对象
    std::function<void(int)> myFunction = [](int x) {
        std::cout << "Value: " << x << std::endl;
    };

    // 调用函数并传递 std::function 对象
    callFunction(myFunction, 42);

    return 0;
}

解释说明:

  1. std::function:这是 C++ 标准库中的一个类模板,可以存储和调用任何可调用对象(如普通函数、lambda 表达式、绑定表达式等)。它提供了一种统一的方式来处理不同类型的函数。

  2. callFunction 函数:该函数接受一个 std::function<void(int)> 类型的参数,表示它可以接受一个以 int 为参数且返回类型为 void 的函数。然后调用传入的函数。

  3. Lambda 表达式:在 main 函数中,我们使用 lambda 表达式创建了一个匿名函数,并将其赋值给 std::function<void(int)> 类型的变量 myFunction。这个 lambda 表达式接收一个整数参数并打印它的值。

  4. 调用 callFunction:最后,我们将 myFunction 和一个整数值传递给 callFunction,从而执行了 lambda 表达式中的逻辑。

上一篇:c++游戏编程

下一篇:回文数c++程序编写

大家都在看

c++闭包

c++向上取整的代码

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

c++ 注释

c++如何判断素数

c++怎么输入字符串

c++ functional

c++框架代码

c++格式化字符串

c++ orm框架

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

Laravel 中文站