我在模板中多次使用boost::protect
来绑定函数。它是否符合新标准?我还没有找到它。我看到std::forward
做了类似的事情。
非常感谢您的帮助!
示例:通过仿函数到绑定的路径:
class C
{
public:
void method1(int i);
};
class B
{
public:
void method2(const boost::function<void(int)>&);
};
...
B* b_ptr;
C* c_ptr;
...
// when func() is called C::method1 of c_ptr is pass through to B::method2 of b_ptr
boost::function<void(void)> func(boost::bind(&B::method2,b_ptr,boost::protect(boost::bind(&C::method1,c_ptr,_1))));