我用VS2005编写了一个C++项目,并使用了大量的STL容器及其附加的STL。但是,我发现VS2005中的STL中没有hash_map,我想使用SGI hash_map。如何将我的项目更改为使用SGI STL?
感谢Brian的方法,它起作用了!这很简单。
发布于 2008-11-03 02:25:36
VS2005确实有一个hash_map:
#include <hash_map>
stdext::hash_map如果你还想这样做的话,你可以使用download the sgi stl here。您应该能够将include目录设置为sgi位置。它将优先于VC++全局包含目录。
发布于 2008-11-03 09:43:05
我不知道VS2005是否有TR1,但如果它有(或者如果您稍后决定使用另一个具有它的编译器),您可以使用unordered_map
#include <tr1/unordered_map>
std::tr1::unordered_map mymap;此外,为了完整性,GCC (过去有<hash_map>)在<ext/hash_map> (在不同的名称空间上)上有hash_map。在最近的GCC版本中,您还可以使用<tr1/unordered_map>。
https://stackoverflow.com/questions/257797
复制相似问题