从较低级别的角度来看,r 值参考是什么样的。我似乎无法理解它!我可以查看从右值引用与左值引用生成的代码(等效的 C 或 x86/x64)示例吗?
例如,这个构造会是什么样子?我们暂时假设没有复制省略。
vector<SomethingHUUGE> myFunc();
void foo(vector<SomethingHUUGE>&&);
int main() { foo(myFunc()); return 0; }
对于代码生成的目的来说没有区别。两者之间唯一的语义差异是您知道 RValue 引用即将被销毁,而左值引用则不会。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)