boost:bind和两个具有相同名称和args计数的方法

时间:2013-10-02 07:12:45

标签: c++ boost

我有一个有两种方法的课

bool Syntax::removeTarget( CommandParam &params );

bool Syntax::removeTarget( const std::string & targetId );

如何绑定第二种方法? boost::bind(&Syntax::removeTarget, this, _1)不起作用。

1 个答案:

答案 0 :(得分:3)

要消除重载的歧义,您必须将它们强制转换(或以其他方式强制)为正确的类型。这应该有效:

boost::bind(static_cast<bool (Syntax::*)(const std::string&)>(&Syntax::removeTarget), this, _1);