NRVO

NRVO aka. Named Return Value Optimization

机制

  • 局部变量
  • 该变量与范围类型完全一致
  • 直接写 return expr;

  • 直接在 caller 的栈上构造并操作变量
违反该机制 の Bad Practice

  1. 局部变量 + return std::move(expr);
  2. 成员变量 + return expr; 当想要转移所有权
最后更新于 Jul 19, 2025 23:53 +0800