gpt4 book ai didi

C++ 有没有办法使用 vector 的内容作为键和自定义值来初始化 unordered_map?

转载 作者:行者123 更新时间:2023-12-02 08:08:01 25 4
gpt4 key购买 nike

假设我有一个 vector

vector<int> vect;
vect.push_back(2);
vect.push_back(3);

现在我想要一个 unordered_map,其中 2 和 3 作为键,0 作为所有这些键的默认值。

有办法吗?

我尝试过这样做

unordered_map<int, int> myMap(vect.begin(), vect.end());

希望它能使用 vector 中的内容作为键和默认 int 值进行初始化。

但是,它不能。

我的意思是,我总是可以迭代 vector 并手动插入对。

我只是想知道我是否可以在申报时作为单行进行。

最佳答案

实际上一个简单的衬垫就足够了,但不能在声明上:

vector<int> vect = { 2, 3, 4};
unordered_map<int,int> map;
transform(vect.begin(), vect.end(), inserter(map, map.end()), [] (int v) { return make_pair(v, 0); });

关于C++ 有没有办法使用 vector 的内容作为键和自定义值来初始化 unordered_map?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33325470/

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