是否可以阻止从 boost.signals 库中的信号中删除某些插槽?
如果是这样,做这种事情的代码应该是什么样子?我是否需要仅为该特定信号创建派生类?
问问题
68 次
1 回答
1
提供您自己的无法返回连接的槽连接函数。没有连接,客户端就无法断开连接。
编辑:代码示例:
struct my_class
{
boost::signals::connection listen_event1(boost::function<void (my_class const&)> const& f)
{
return signal1.connect(f);
}
void listen_event2(boost::function<void my_class const&)> const& f)
{
signal2.connect(f);
}
private:
typedef boost::signals::signal<void(my_class const&)> sig_t;
sig_t signal1;
sig_t signal2;
};
信号 2 连接无法断开。
于 2010-06-01T16:05:27.710 回答