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(这是多余的并禁止省略)。
| 归档时间: |
|
| 查看次数: |
398 次 |
| 最近记录: |