Ну, на самом деле вы не можете. Способ, который вы нашли, очень неэффективен, он имеет вычислительную сложность O (n) (наихудший случай n операций, где n - количество элементов в карте).
Доступ к элементу в векторе или в массиве имеет сложность O (1) путем сравнения (постоянная вычислительная сложность, одна операция).
Учтите, что карта внутренне реализована как красно-черное дерево (или дерево avl, это зависит от реализации), и каждая операция вставки, удаления и поиска - наихудший случай O (log n) (для операций с базой 2 требуется логарифм найти элемент в дереве), это неплохо.
Способ, с которым вы можете иметь дело, состоит в том, чтобы использовать собственный класс, который имеет как вектор, так и карту.
Вставка в конце класса будет усреднена O (1), поиск по имени будет O (log n), поиск по индексу будет O (1), но в этом случае операция удаления будет O (n).