Библиотека C/C++ разработчика | cpp, boost, qt
19.9K subscribers
1.86K photos
54 videos
16 files
4.07K links
Все самое полезное для плюсовика и сишника в одном канале.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/d6cd2932

Для обратной связи: @proglibrary_feeedback_bot

РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17
Download Telegram
🐸 Подборка вакансий для C++-разработчиков за неделю

C++ Software Developer (FreeCAD) — от 150 000 и до 350 000 ₽ Удаленно

C++/Qt/QML разработчик под Android в команду Транспорта — Удаленно

Разработчик C++/Rust (SDN dataplane, DPDK/DOCA API) — от 300 000 и до 600 000 ₽ Удаленно

C++ Gameplay Programmer (Unreal Engine) — от 1 500 и до 3 000 $ Удаленно

Программист/разработчик C (senior) — до 440 000 ₽ Офис (Москва)

Библиотека C/C++ разработчика
👍1
🔥 std::list - когда он действительно нужен

Проблема: Многие выбирают std::list думая, что вставка O(1) всегда лучше, но забывают про cache locality.


✏️ Когда list ДЕЙСТВИТЕЛЬНО лучше:


1️⃣ Частые вставки/удаления в середине + большие объекты:
struct HeavyObject { 
std::array<double, 1000> data;
};

std::list<HeavyObject> items; // Не перемещаем данные
auto it = items.begin();
std::advance(it, 5);
items.insert(it, HeavyObject{}); // Быстро!



2️⃣ Когда нужна стабильность итераторов:
std::list<int> data = {1, 2, 3};
auto it = data.begin();
data.push_back(4); // it все ещё валиден!



3️⃣ В 90% случаев vector быстрее list:
// vector выигрывает благодаря cache:
std::vector<int> fast; // Данные подряд в памяти
std::list<int> slow; // Прыжки по указателям


Библиотека C/C++ разработчика

#буст
Please open Telegram to view this post
VIEW IN TELEGRAM
🙏8👍51👾1