在声明c++之后将向量插入无序集合



我正在寻找一种方法,将元素向量插入到我已经声明的无序集合中。假设我有如下代码:

unordered_set<string> us;
vector<string> v{"green", "dog", "keys"};

这里,已经声明了us。如何在声明后用一个命令(即没有for循环并单独推送元素(用向量v中的元素填充us

这个类似的答案将向量的元素添加到无序集并不是我想要的,因为无序集是在声明过程中初始化的。

更好的是,是否可以在一个命令中用多个元素填充无序集,而不使用向量?

使用带insert((的迭代器。

us.insert(v.cbegin(), v.cend());

只要序列符合输入迭代器的概念并返回字符串,就不需要向量。数组、其他集合、向量等都可以。

最新更新