C++ 将boost::bind的输出存储在boost::函数中

C++ 将boost::bind的输出存储在boost::函数中,c++,boost-bind,boost-function,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 asomeMe

我现在有类似的东西

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;
}
void asomeMethod(int q)
{

std::cout必须是
boost::function
,因为没有剩余的参数

然后像函数一样调用它:

parfunct();

在这种情况下,我得到错误
Error C2064:term不会计算为具有0个参数的函数
@Rajeshwar:抱歉,已修复。
bind
中的无关参数被忽略,微妙的错误。
函数
类型需要是您调用的,而不是
bind
的输入。