我不明白什么时候我应该使用std::move,什么时候我应该让编译器优化…例如:我应该用哪一种?

什么是复制省略?什么是(命名)返回值优化?它们意味着什么?在什么情况下会发生?什么是限制?如果你提到了这个问题,你可能正在寻找介绍。有关技术概述,请参阅标准参考。常见情况见这里。