std::function 模板
时间: 2023-08-25 08:13:47 浏览: 56
std::function是一个通用的多态函数包装器,可以存储、复制和调用任何可调用的目标,包括函数、lambda表达式、绑定表达式或其他函数对象,以及指向成员函数和指向数据成员的指针。当一个std::function对象没有包装任何实际的可调用元素时,调用该对象会抛出std::bad_function_call异常。
在示例代码中,使用了std::function来包装函数calc,并通过std::bind绑定了calc的参数。通过绑定参数后,可以通过调用std::function对象来执行calc函数,并传递特定的参数。在示例中,std::function对象func绑定了calc函数的参数1、5和3,而std::function对象func1绑定了calc函数的参数1、5和占位符std::placeholders::_1,std::function对象func3绑定了calc函数的参数5和两个占位符std::placeholders::_1和std::placeholders::_2。<em>1</em><em>2</em><em>3</em>
#### 引用[.reference_title]
- *1* [C++ function类模板](https://blog.csdn.net/weixin_38739598/article/details/112409010)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item]
- *2* *3* [std::function类模板](https://blog.csdn.net/m0_55875295/article/details/124679360)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT3_1"}} ] [.reference_item]
[ .reference_list ]