Why to use std::move despite the parameter is an r-value reference
问题 I am confused about using std::move() in below code: If I uncomment line at (2) the output would be: 1 2 3 but if I uncomment line at (1) output would be nothing which means that move constructor of std::vector was called! Why do we have to make another call to std::move at (1) to make move constructor of std::vector to be called? What I understood that std::move get the r-value of its parameter so, why we have to get the r-value of r-value at (1)? I think this line _v = rv; at (2) is more