C++ 的 “移动语义”——Move Semantics

相关术语

| 中文 | 英文 |

|------|------|

| 移动语义 | move semantics |

| 右值引用 | rvalue reference (T&&) |

| 左值 | lvalue |

| 右值 | rvalue |

| 将亡值 | xvalue (expiring value) |

| 移动构造函数 | move constructor |

| 移动赋值运算符 | move assignment operator |

| 移动迭代器 | move iterator |

| 完美转发 | perfect forwarding |

| 返回值优化 | return value optimization (RVO) |

| 具名返回值优化 | named return value optimization (NRVO) |


例句

  • Move semantics allow resources to be transferred from one object to another instead of copying them.

    (移动语义允许把资源从一个对象转移到另一个对象,而不是复制。)

  • Move semantics is one of the most important features introduced in C++11.

    (移动语义是 C++11 引入的最重要的特性之一。)

  • The compiler uses move semantics when an object is passed by rvalue reference.

    (当对象通过右值引用传递时,编译器会使用移动语义。)


用法说明

  • 通常用复数形式 move semantics(把"语义"视为一组规则/机制)。

  • 单数 move semantic 较少用,一般不这么写。

  • 作定语时:move semantics rules (移动语义规则)、move semantics optimization(移动语义优化)。


移动语义 = move semantics。这是唯一标准、通用的说法。

相关推荐
码云数智-园园1 小时前
C++ STL 容器怎么选?vector、list、map、unordered_map 优缺点对比
java·开发语言
en.en..1 小时前
竖线 |:管道、按位或、掩码组合
java·开发语言
techdashen2 小时前
Go Map 详解:键值对实际上是如何存储的
开发语言·后端·golang
程序猿乐锅2 小时前
【计算机组成原理 | 第六章】中央处理器 CPU
java·开发语言
Terra.K2 小时前
ThreadLocal解决一个线程里面跨层传递问题
java·开发语言·后端
变与不变8063 小时前
引用类型、内存原理与对象
开发语言·前端·javascript
wuyk5553 小时前
从零吃透 MQTT 通信|第 5 章 MQTT 心跳保活机制深度优化,断线检测与智能自动重连
c语言·开发语言·stm32·学习
weixin_440730503 小时前
socket解决多次输入问题-大数据接收问题-模块动态导入
java·开发语言·servlet
励志不掉头发的内向程序员3 小时前
【LibreCAD 2D架构】从鼠标点击到图形创建:RS_ActionDrawLine交互流程与状态机解析
开发语言·c++·qt·学习·系统架构·计算机外设·交互