chenyahui / chenyahui.github.io

My blog
http://www.cyhone.com
0 stars 2 forks source link

c++ lambda 内 std::move 失效问题的思考 | 编程沉思录 #37

Open chenyahui opened 4 years ago

chenyahui commented 4 years ago

https://www.cyhone.com/articles/why-move-no-work-in-lambda/

最近在写 C++ 时,有这样一个代码需求:在 lambda 中,将一个捕获参数 move 给另外一个变量。 看似一个很简单常规的操作,然而这个 move 动作却没有生效。 具体代码如下: 1234567std::vector<int> vec = {1,2,3};auto func = [=](){ auto vec2 = std::move(vec