对libsigc++的简单介绍。libsigc++是实现类型安全回调的一个C++模板库。
在很多情况下,检测事件的代码与处理事件的代码需要去耦合,特别在GUI编程里面。按键点击事件的检测与点击事件的处理是分开的。
与C++的异常处理的情况相似,检测到异常的代码并不知道如何去处理异常,需要将异常交给用户代码去处理。
libsigc++提供了信号(signal)和槽(slot)的概念。slot对应一个回调函数,信号(signal)与槽(slot)相关联(attach),但一个信号被发射(emit)时,相对应的槽被调用。
sigc::signal<返回类型,参数类型,...> * onxxxx
onxxxx=new sigc::signal<返回类型,参数类型,...>
onxxxx->connect(sigc::mem_fun(...));
onxxx->emit(...)
阅读(644) | 评论(0) | 转发(0) |