Комментарии 2
Интересный эксперимент! Но, кажется, практическая ценность близка к нулю: стандарт не гарантирует порядок в unordered_map, и полагаться на порядок не стоит
Вы продемонстрировали пример хорошего инженерного мышления: эмпирически исследовали "черный ящик" и сделали выводы о реализации его в clang
Но в чужих статьях подробно разобрано, как именно устроены реализации в Clang, GCC и MSVC, откуда можно узнать исчерпывающую информацию для вопроса в начале этой статьи
Например, в MSVC бакеты хранятся иначе, в глобальном списке, и «обратный порядок» при rehash там не воспроизводится -- так что наблюдения из статьи применимы только к libc++
Так и в чём смысл? В чем образовательная ценность? Показать, что можно угадать устройство библиотеки по косвенным признакам, вместо того чтобы прочитать её код?
Текст носит развлекательный характер
Не думаю что у кого то возникнет мысль "о, теперь буду два раза перекладывать" тем более что конкретно для данной реализации это просто так не сделать - ибо нет метода легко вычислить размер, на который надо сделать reserve
Действительно, в выводы можно добавить что ни на какую связь порядков в двух таблицах в практическом смысле рассчитывать нельзя

А давайте переложим данные из unordered_map в unordered_map