7

我知道这个问题已经被问及并得到了回答,但那是一年多以前的事了,看起来还有新的替代方案。

因此,我正在使用SFML 库(实际上我开始觉得它非常酷)编写游戏,并且我正在寻找一个轻量级的快速事件/委托库。

在做了一些研究并把经典的(Boosts.Signalslibsigc++)放在一边之后,我发现了“ cpp-events ”。它现在看起来不是很流行——因为它是一个非常新的库——但它似乎最难测试。我很想知道这里是否有人尝试过并且可以提供一些反馈。

您还有其他类似(或更好)的选择吗?我看起来比论坛上的答案更真实的项目(将被维护)。

谢谢 !

4

2 回答 2

3

另请查看Boost.Signals2,它是 Boost.Signals 的线程安全版本。我在一个中型项目中使用它,对此我感到非常满意。

于 2010-03-03T07:01:41.653 回答
3

我的感觉是http://www.codeproject.com/KB/cpp/ImpossiblyFastCppDelegate.aspx是一个很好的游戏实现。没有动态内存分配,性能合理,调试简单 => 非常适合游戏。

我过去使用过类似的委托,这个实现看起来更有效。

您建议的那个提到了线程安全,但我不喜欢在线程之间使用基于委托的接口。这在一个小项目上可能工作得很好,但如果一个团队成长,那么灾难的可能性也会增加。我也会质疑这种功能的性能影响。

于 2010-03-03T02:10:55.713 回答