Boost C++ 库

...世界上最受推崇和专业设计的 C++ 库项目之一。 Herb SutterAndrei Alexandrescu, C++ 编码标准

PrevUpHomeNext

第 14 章。 Boost.Function

Douglas Gregor

使用、修改和分发受 Boost 软件许可版本 1.0 的约束。(请参阅随附文件 LICENSE_1_0.txt 或访问 https://boost.ac.cn/LICENSE_1_0.txt 获取副本)

目录

简介
历史和兼容性说明
教程
基本用法
自由函数
成员函数
函数对象的引用
比较 Boost.Function 函数对象
参考
定义
头文件 <boost/function.hpp>
头文件 <boost/function_equal.hpp>
常见问题
杂项说明
Boost.Function 与函数指针
性能
对抗虚函数“膨胀”
致谢
测试套件
验收测试
负面测试

简介

Boost.Function 库包含一系列类模板,这些类模板是函数对象包装器。这个概念类似于广义的回调。它与函数指针共享一些特性,两者都定义了一个调用接口(例如,一个接受两个整数参数并返回一个浮点值的函数),通过该接口可以调用一些实现,并且在程序执行过程中调用的实现可能会发生变化。

通常,任何使用函数指针来延迟调用或进行回调的地方,都可以使用 Boost.Function 来替代,从而允许用户在目标实现方面具有更大的灵活性。目标可以是任何“兼容”的函数对象(或函数指针),这意味着 Boost.Function 指定的接口的参数可以转换为目标函数对象的参数。


PrevUpHomeNext