What is std::move() and when should it be used in C++?
Hello colleagues! I recently started learning C++11 and came across std::move(). I read the documentation but didn't fully understand what it is and why it's needed. I have this code:
```cpp
#include
#include
#include
class MyClass {
public:
std::string data;
MyClass(const std::string& str) : data(str) {}
};
int main() {
std::vector vec;
std::string bigString = "a very long string that takes up a lot of memory...";
// Option 1: just add
MyClass obj1(bigString);
vec.push_back(obj1);
// Option 2: use std::move
MyClass obj2(bigString);
vec.push_back(std::move(obj2));
return 0;
}
```
I understand that std::move() is somehow related to moving rather than copying
No answers yet.
Log in to leave an answer
Blogs
CI/CD for C# (.NET) Projects with GitHub Actions: A Step-by-Step Guide