在lambda中移动捕获如何通过C ++ 11 lambda中的move(也称为右值引用)捕获?我想写这样的东西:std::unique_ptr<int> myPointer(new int);std::function<void(void)> example = [std::move(myPointer)]{
*myPointer = 4;};
3 回答
侃侃尔雅
TA贡献1801条经验 获得超16个赞
您还可以使用std::bind捕获unique_ptr:
std::function<void()> f = std::bind(
[] (std::unique_ptr<int>& p) { *p=4; },
std::move(myPointer)
);- 3 回答
- 0 关注
- 781 浏览
添加回答
举报
0/150
提交
取消
