VS2005でsgi hash_tableを使用する方法は?
質問
VS2005でC ++プロジェクトを作成し、プラスインSTLで多くのSTLコンテナを使用しました。ただし、VS2005のSTLにはhash_mapが含まれていないことがわかったため、SGI hash_mapを使用します。 SGI STLを使用するようにプロジェクトを変更するにはどうすればよいですか?
ブライアンの方法のおかげで、うまくいきました!そしてそれは簡単です。
解決
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>
でした)にはhash_map
on <ext/hash_map>
(別のネームスペース)があります。最近のGCCリリースでは、<tr1/unordered_map>
も使用できます。
所属していません StackOverflow