渐进式编程课
C++ 目录
第 15 课2026.09.18

把不再需要的字符串资源转移给新对象,避免一次深复制。

第 15 课:移动语义转移资源

  • 日期:2026-09-18
  • 课程序号:第 15 课
  • 知识点:移动语义转移资源

用途或适用场景

把不再需要的字符串资源转移给新对象,避免一次深复制。

核心概念

std::move 把表达式转换为可移动值;被移动对象仍有效,但其具体内容不应再依赖。

最小代码或操作示例

text
std::string title = "C++";
std::string moved = std::move(title);
std::cout << moved;

3~5 分钟练习

把 moved 再移动到 finalTitle。

参考答案

std::string finalTitle = std::move(moved);

与上一课的联系

继承上一课的值复制对比;本课只增加资源所有权转移;完成后下一课可为 Lesson 编写移动构造场景。

时效校验

时效校验:2026-09-18(ISO C++ 当前 FAQ)。已实际打开并核对下列官方资料;未发现本课主方案存在废弃标记。

官方参考