2

std :: mapと同じ機能を持つが、コンテンツを自動的にソートしない代替コンテナはありますか?std :: mapは、「順序付けられた」コンテナです。

std::mapバーに物を追加するときに問題が発生しました。文字列リストは自動的にアルファベット順にソートされます。

私のプログラムの他のすべては正常に動作します。

私が疑問に思っているのは、std :: mapとまったく同じ機能を持っているが、順序付けされていないコンテナがあるかどうかです。検索を実行して、std ::mapを???:??に置き換えることができます。

そのようなものはありますか?

よろしくお願いします--Jynks

4

1 に答える 1

2

std::unordered_mapC++11以降で利用可能なコンテナがあります。まだ完全にC++11互換ではない多くのコンパイラも、それをサポートしています。このコンテナはアイテムをアルファベット順に並べませんが、連想コンテナであるため、アイテムの挿入(またはその他の)順序を保持する必要はありません。

コンテナ内のアイテムの順序を保持し、連想コンテナ(つまりマップ)としても機能させたい場合は、Javaと同様に、リンクリストとソートされていないマップの組み合わせとして独自のコンテナを構築できますLinkedHashMap

于 2012-06-24T02:55:05.560 に答える