gpt4 book ai didi

c++ - 静态转换为右值引用和 std::move 之间有什么区别吗

转载 作者:IT老高 更新时间:2023-10-28 21:40:28 26 4
gpt4 key购买 nike

静态转换的描述说

If new_type is an rvalue reference type, static_cast converts the value of expression to xvalue. This type of static_cast is used to implement move semantics in std::move.(since C++11)

这是否确认以下是等价的?

(A)

X x1;
X x2 = static_cast<X&&>(x1);

(B)

X x1;
X x2 = std::move(x1);

最佳答案

是的,有一个非常重要的区别:std::move 记录了您想要做什么。此外, Actor 阵容容易写出错误,例如忘记了 & 或错误类型 X

可以看出,std::move 的输入更少。

关于c++ - 静态转换为右值引用和 std::move 之间有什么区别吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17142167/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com