Boost C++ 库
...目前世界上评价最高、设计最精良的 C++ 库项目之一。
— Herb Sutter 和 Andrei Alexandrescu, C++ Coding Standards
版权所有 © 2001-2004 Douglas Gregor
版权所有 © 2007-2009 Frank Mori Hess
根据 Boost Software License, Version 1.0 分发。(请参阅随附文件 LICENSE_1_0.txt 或访问 https://boost.ac.cn/LICENSE_1_0.txt 复制)
目录
Boost.Signals2 库是一个托管信号与槽系统的实现。信号代表具有多个目标的“回调”,在类似的系统中也称为发布者或事件。信号连接到一组槽,这些槽是回调接收器(也称为事件目标或订阅者),当信号被“发出”时,它们就会被调用。
信号与槽是托管的,因为信号和槽(或者更准确地说,作为槽一部分的对象)可以跟踪连接,并且能够在其中任何一个被销毁时自动断开信号/槽连接。这使用户能够建立信号/槽连接,而无需花费大量精力来管理这些连接的生命周期与所有涉及对象的生命周期的关系。
当信号连接到多个槽时,会有一个关于槽的返回值与信号的返回值之间关系的问题。Boost.Signals2 允许用户指定组合多个返回值的方式。