gpt4 book ai didi

c++ - 为什么 std::unordered_map::emplace() 会失败?

转载 作者:太空狗 更新时间:2023-10-29 23:40:05 47 4
gpt4 key购买 nike

我有一个std::unordered_map,我emplace()一个对象通过:

my_map.emplace(std::piecewise_construct,
std::forward_as_tuple(key),
std::forward_as_tuple(value1, value2));

这在运行时的某个时刻失败,返回的元组的第二个位置为 false。有没有办法获得有关正在发生的事情的更多信息? top 没有显示任何内存问题。

最佳答案

.second 中的 false 表示“等价元素已经存在”。在这种情况下,.first 中的迭代器指向该等效元素。

所以发生的事情是您在 map 中已经有了 key,您可以在返回值上使用 .first 来访问它。

关于c++ - 为什么 std::unordered_map::emplace() 会失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23062672/

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