将boost :: bind的输出存储在boost :: function中

时间:2013-10-25 18:51:46

标签: c++ boost-bind boost-function

我目前有类似的东西

void asomeMethod(int q)
{
    std::cout << "Method with parameter " << q ;
}

int main()
{
     boost::function<void(int)> parfunct;
     parfunct = boost::bind(&asomeMethod,12);
     parfunct;  //Does not call asomeMethod ??
    return 0;
}

我想调用函数ptr但是没有调用该方法?关于我可能做错什么的任何建议?

1 个答案:

答案 0 :(得分:1)

它必须是boost::function<void()>,因为没有剩余的论据。

然后将其称为函数:

parfunct();