gpt4 book ai didi

c++ - 移出的 xvalue 究竟需要什么?

转载 作者:行者123 更新时间:2023-11-30 04:25:29 25 4
gpt4 key购买 nike

<分区>

Possible Duplicate:
What constitutes a valid state for a “moved from” object in C++11?

考虑这样的事情:

class Foo {};  
std::vector<Foo> v( 5 );

这样做是否合法:

v.front() = std::move( v.back() );  

前提是我之后做这样的事情:

v.pop_back();  

更准确地说,我想知道经历了 std::move() 的 xvalue 需要什么语义。
我知道它需要是可破坏的(显然)。但还有别的吗?假设我会调用 std::vector::insert()或其他一些功能,可能会复制/move std::move()幕后值(value)。
这仍然合法吗?

在我的真实案例中,我有 std::vector<std::vector<Foo>>并用它做事。
但是我不知道std::move()是否合法来自std::vector仍然被外部使用 std::vector .

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