传递函数指针是事件驱动系统中通常的惯例,籍此回调例程通过指针来调用。但是,C++提供了另外一种可供选择的更好的办法,就是函数对象,利用它可以避免使用函数指针。这样做有几个优点。首先,代码更有弹性,可伸缩性更好,因为修改了包含此函数的对象后,不影响其用户。此外,编译器可以内联函数对象,从而进一步增强性能。有关此问题存在很多争论,大多数都倾向于函数对象。函数对象可以具体表达依赖成员模板的通用算法,这些...
阅读全文
2006
07-08