Загружаем изображение…

🧩 Почему «обычный STL» в C++ иногда заменяют своим велосипедом



На Хабре вышел большой разбор альтернативных STL и контейнеров, которые используют в геймдеве, highload-сервисах, компиляторах и приложениях, где важны память, кеши и предсказуемость.

В материале разбирают:

🔹 EASTL — библиотеку от Electronic Arts для игровых проектов, консолей и кода с жёстким бюджетом памяти. Главный плюс — контроль аллокаций и предсказуемое поведение на разных платформах.

🔹 LLVM SmallVector / DenseMap — контейнеры для случаев, где много мелких короткоживущих структур и важно не прыгать по куче без необходимости.

🔹 Folly — набор библиотек от Meta для highload-сервисов: быстрые хеш-таблицы, строки, small_vector и оптимизации под большие нагрузки.

🔹 Boost flat_map / std::flat_map — словарь на отсортированном векторе. Хорош, когда данные часто читаются и редко меняются.

🔹 Zmeya / FlatBuffers / Cap’n Proto — подход для read-only данных, которые можно загрузить почти без парсинга и сразу читать из памяти.

Прежде чем тащить в проект EASTL, Folly или очередной «супербыстрый» контейнер, сначала стоит измерить реальные bottleneck’и. Потому что единственная секта, которой можно доверять в C++, — это секта профилирования своих данных.

https://habr.com/ru/articles/1042198/

#cpp #programming

👉 @cpp_lib
Просмотры: 1 148
Открыть в MAX Сообщить о неточности

Репосты публикации

Публикация канала

Сообщить о неточности

Опишите, что нужно исправить. Если есть источник, добавьте ссылку.

Вы покидаете datool.ru

Ссылка ведёт на внешний сайт. datool.ru не отвечает за его содержимое — проверьте адрес, прежде чем вводить пароли или платёжные данные.

Переход через 10 с

Перейти