В настоящее время у меня есть std::map<std::string,int>
, который хранит целочисленное значение для уникального строкового идентификатора, и я просматриваю строку. В основном это то, что я хочу, за исключением того, что он не отслеживает порядок вставки. Поэтому, когда я повторяю карту для распечатки значений, они сортируются в соответствии со строкой; но я хочу, чтобы они сортировались в соответствии с порядком (первой) вставки.
Я подумал об использовании vector<pair<string,int>>
вместо этого, но мне нужно искать строку и увеличивать числовые значения около 10 000 000 раз, поэтому я не знаю, будет ли вектор значительно медленнее.
Есть ли способ использовать std:: map или есть другой контейнер std, который лучше подходит мне?
[Я на GCC 3.4, и у меня, наверное, не более 50 пар значений на моей std:: map].