【发布时间】:2013-12-14 03:24:32
【问题描述】:
我尝试在 C++ 11 中使用“简单”信号系统。我使用以下类: http://geekswithblogs.net/raccoon_tim/archive/2011/09/28/lambdas-and-events-in-c.aspx
但我有一个问题(我使用 Visual Studio 2012):
问题描述
我无法创建这样的活动:
RREvent1Arg<void> testEvent;
“void”不是参数类型!!
我尝试过“模板专业化”,例如:
template<typename T1, typename T2> class Signaler {};
template<> class Signaler<T1> {};
template<> class Signaler<void> {};
但是我遇到了一些编译问题:
错误 C2065:“T1”:未声明的标识符
感谢您的帮助
【问题讨论】:
-
向我们展示一些我们可以尝试编译的代码。
-
除非您已经致力于这个“简单”的信号系统,否则我建议您使用更普遍(经过试验和测试)的库,例如 boost signals2。
-
我已经解决了问题 2,这是一个“完全重新编译”问题!感谢您的 cmets...
-
Here is a signals system 我刚刚写的。我很无聊。
-
非常感谢,问题是VS2012不支持可变参数模板:-(
标签: c++ events c++11 lambda signals