我正在尝试通过在 std::make_shared 上调用 std::bind 来创建一个返回 shared_ptr 的函子,但是语法超出了我的范围,或者甚至不可能?如下所示,假设 MyBar 的构造函数采用对 MyFoo 的 const 引用:
std::function<std::shared_ptr<MyBar>(const MyFoo &)> functor = std::bind(&std::make_shared<MyBar>, std::placeholders::_1);
我正在尝试通过在 std::make_shared 上调用 std::bind 来创建一个返回 shared_ptr 的函子,但是语法超出了我的范围,或者甚至不可能?如下所示,假设 MyBar 的构造函数采用对 MyFoo 的 const 引用:
std::function<std::shared_ptr<MyBar>(const MyFoo &)> functor = std::bind(&std::make_shared<MyBar>, std::placeholders::_1);