Why is “boost::function = boost::bind(…)” creating 13 temporaries?

試著忘記壹切 提交于 2019-12-01 02:58:53

If you remove the "func = " assignment part the number of copies are lowered to 4 which is quite better than 13.

template <class F>
void callF(F fun)
{
}
callF(boost::bind(&func, fl));

So the solution is simple - don't use boost::function

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!