gpt4 book ai didi

c++ - 由于 LLVM 错误,Xcode 无法编译

转载 作者:行者123 更新时间:2023-11-28 01:56:04 24 4
gpt4 key购买 nike

我正在尝试在 Xcode 中编写 C++ 程序。我的代码似乎没有任何问题,但是当我尝试编译它时出现以下错误:

Implicit instantiation of undefined template 'std::__1::hash<std::1::pair<unsigned long, unsigned long> >'

这个错误显然出现在 LLVM 的 type_traits 文件的第 1008 行。我认为这是一些库错误,但当我尝试编译一个简单的 Hello World 时,它运行良好。

有人知道我错过了什么吗?

最佳答案

没有std::hash特化std::pair (或 std::tuple )。这是 C++ 标准中最荒谬的特性之一,它削弱了库。

这可能是因为您使用的是 std::pair作为 unordered_map 中的键.

你需要做的是包括 boost: <boost/functional/hash.hpp>并声明boost::hash<std::pair<X, Y>>作为 map 的第三个模板参数。

直到 std::hash是固定的,它几乎没用。

关于c++ - 由于 LLVM 错误,Xcode 无法编译,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41150904/

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