C++ functional模板 #include <functional>(提供了一种更通用的函数绑定和调用机制)

Posted Dontla

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了C++ functional模板 #include <functional>(提供了一种更通用的函数绑定和调用机制)相关的知识,希望对你有一定的参考价值。

std::function提供了一种更通用的函数绑定和调用机制,可以将普通函数、lambda表达式、bind表达式以及其他function对象绑定到std::function,并能够通过std::function调用所绑定的对象,并可以根据不同的参数类型执行不同的操作。

示例:

#include <functional>
#include <iostream>

int func(int a, int b)

    return a + b;


int main()

    // 将函数func绑定到std::function
    std::function<int(int, int)> f = func;
    // 通过std::function调用绑定的函数
    int result = f(1, 2);
    std::cout << "result: " << result << std::endl;
    return 0;

编译运行结果:

以上是关于C++ functional模板 #include <functional>(提供了一种更通用的函数绑定和调用机制)的主要内容,如果未能解决你的问题,请参考以下文章

请C++高手指导 IntelliSense: 缺少 类模板 "std::iterator" 的参数列表 。如何添加类模板到集成环境

C++ 使用具有无序映射的模板类型

求STL(C++)模板库的set.h头文件

std::function"函数"对象包装器

求大神以这个C++代码为例对STL标准模板库的容器,迭代器,算法和函数对象进行分析

C++函数模板(Function Template)