gpt4 book ai didi

c++ - 将 vector move 到 unordered_set

转载 作者:行者123 更新时间:2023-12-03 06:50:48 26 4
gpt4 key购买 nike

我有一个 vector<T>我想初始化 unordered_set<T>和。 vector<T>以后再也不会使用了。
我的做法如下

std::vector<T> v{ /* some large amount of data, typically strings */ };
std::unordered_set<T> ht;
std::move(v.begin(), v.end(), std::inserter(ht, ht.end()));
我想知道是否有更直接的方法来使用 unordered_set构造函数?它的 move 构造函数不接受 vector 。

最佳答案

这个解决方案实际上需要更多的字符,但它确实更直接地表达了意图:

std::unordered_set<T> ht(std::make_move_iterator(v.begin()),
std::make_move_iterator(v.end()));

关于c++ - 将 vector move 到 unordered_set,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63956848/

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