Nagłówek <hash_map>
nie jest częścią standardu C++ i jest implementacją specyficzną dla kompilatora. Nie ma gwarancji, że będziesz w stanie znaleźć go w jakimś konkretnym systemie, lub że różne implementacje, które pojawią się w każdym systemie będą wzajemnie kompatybilne.
Jeśli chcesz użyć mapy skrótów w C++, możesz zajrzeć do boost::unordered_map
, tr1::unordered_map
lub prototypowej implementacji kompilatora 0x ++ 0x. Implementacje te są dość wystandaryzowane przez ISO lub społeczność Boost i mogą być łatwo zainstalowane na większości kompilatorów C++. Wiem, że to trochę aroganckie, gdybym po prostu powiedział "idź przepisać ten kod przy użyciu innej biblioteki", ale biorąc pod uwagę, że C++ ma zamiar zdobyć kontenery hash w tej formie, jest to prawdopodobnie opłacalna inwestycja.
Nadal mam "" hash_map "nie została zadeklarowana w tym zakresie" po tym, jak podążałeś za twoim przewodnikiem. –
Czy użyłeś 'using namespace __gnu_cxx;' lub '__gnu_cxx :: hash_map'? –
dziękuję. rozwiązany. –