如何从函数返回&&对象?

Dim*_*ims 7 c++ return-value rvalue-reference

TTempTable上课有移动共鸣。我写

TTempTable&& MyFunction() {
   TTempTable tmp = f(...);
   ...
   return std::move(tmp);
}
Run Code Online (Sandbox Code Playgroud)

并且没有编译器错误。

这是正确的吗?

Lig*_*ica 20

不,这是不正确的。

您正在返回对局部变量的引用。那个参考悬而未决。

像任何悬而未决的事情一样,编译器不会(总是)为您诊断它。

按值返回,并删除std::move这是多余的并禁止省略)。