如何在VS2005中使用sgi hash_table

How to use sgi hash_table in VS2005?

本文关键字:sgi hash table VS2005      更新时间:2023-10-16

我在VS2005中编写了一个C++项目,并在STL中使用了大量带有加号的STL容器。然而,我发现VS2005中的STL中没有hash_map,我想使用SGI hash_map。如何将我的项目更改为使用SGI STL?

感谢Brian的方法,它有效!这很简单。

VS2005确实有一个hash_map:

#include <hash_map>
stdext::hash_map

如果你仍然想,你可以在这里下载sgi stl。您应该能够将include目录设置为sgi位置。它将优先于VC++全局包含目录。

我不知道VS2005是否有TR1,但如果它有(或者如果您稍后决定使用另一个有TR1的编译器),您可以使用unordered_map:

#include <tr1/unordered_map>
std::tr1::unordered_map mymap;

此外,为了完整性,GCC(过去有<hash_map>)在<ext/hash_map>上有hash_map(在不同的命名空间上)。在最近的GCC版本中,您还可以使用<tr1/unordered_map>