Я провел некоторое тестирование, и из того, что я увидел, похоже, что подсказка была полностью проигнорирована std::unordered_map
. Я не мог найти никакой ценности, чтобы передать это, которое, казалось, обеспечивало какое-либо преимущество вообще.
Стандарт явно дает реализации неупорядоченных коллекций, чтобы игнорировать подсказку, переданную emplace_hint
, и я думаю, что большинство (если не все) обычно делают. Спецификация на самом деле не говорит, следует ли вам передавать итератор для вставляемого значения (если оно есть) или для одного после него (как это было бы с упорядоченными ассоциативными коллекциями). Учитывая, что он основан на хэше, итератор для около правильной точки вставки, вероятно, бесполезен. Таким образом, чтобы иметь хоть какую-то надежду, он должен быть итератором к фактической точке вставки (например, тот, который имеет тот же ключ, что и вставляемый вами, если вы пытаетесь вставить дубликат).
Резюме
Я сомневаюсь, что есть какое-то значение, которое вы можете передать, которое дает какое-либо существенное преимущество (а в тестировании я не нашел такого, которое дает).