Avoid Objects with Names

// Bad
MyType x{42, "hello"};
foo(x);

// Good
foo({42,"hellow"});

When You Cannot Avoid Using Names

std::string str{"hello"};
std::vector<std::string> coll;

coll.push_back(str);
coll.push_back(std::move(str));
std::string line;
while(std::getline(myStream, line)) {
   coll.push_back(std::move(line));
}

Avoid Unnecessary std::move()