通过shared_ptr创建堆分配闭包管理的语法是什么.我想将闭包传递给函数并能够传递nullptr.看起来像使用a shared_ptr< ::std::function<void()>但我无法通过语法来初始化lambda expresion
应该是这样的
auto lambda = []() { /* do something usefull */ };
auto p = std::make_shared<std::function<void()>>(lambda);
Run Code Online (Sandbox Code Playgroud)
但实际上你可能没有必要shared_ptr,因为功能可以从构造nullptr.
std::function<void()> fnc(nullptr);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
451 次 |
| 最近记录: |