代码之家  ›  专栏  ›  技术社区  ›  Rajeshwar

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

  •  0
  • Rajeshwar  · 技术社区  · 11 年前

    我现在有这样的东西

    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 回复  |  直到 11 年前
        1
  •  1
  •   Kerrek SB    11 年前

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

    然后像函数一样调用它:

    parfunct();