私はVS2005でC++プロジェクトを作成し、プラスインSTLで多くのSTLコンテナーを使用しました。ただし、VS2005のSTLにはhash_mapが含まれていないことがわかりました。SGIhash_mapを使用したいと思います。SGI STLを使用するようにプロジェクトを変更するにはどうすればよいですか?
ブライアンの方法をありがとう、それはうまくいきます!そして、それは簡単です。
VS2005にはhash_mapがあります。
#include <hash_map>
stdext::hash_map
それでも必要な場合は、ここからsgistlをダウンロードできます。includeディレクトリをsgiの場所に設定できるはずです。これは、VC++グローバルインクルードディレクトリよりも優先されます。
VS2005にTR1があるかどうかはわかりませんが、ある場合(または、後でそれを備えた別のコンパイラを使用することにした場合)、次を使用できますunordered_map
。
#include <tr1/unordered_map>
std::tr1::unordered_map mymap;
また、完全を期すために、GCC(以前は持っていた<hash_map>
)は(別の名前空間で)オンになっていますhash_map
。<ext/hash_map>
最近のGCCリリースでは、を使用することもできます<tr1/unordered_map>
。