uk
Feedback
Библиотека C/C++ разработчика | cpp, boost, qt

Библиотека C/C++ разработчика | cpp, boost, qt

Відкрити в Telegram

Все самое полезное для плюсовика и сишника в одном канале. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/d6cd2932 Для обратной связи: @proglibrary_feeedback_bot РКН: https://gosuslugi.ru/snet/67a5bac324c8ba6dcaa1ad17

Показати більше
2025 рік у цифрахsnowflakes fon
card fon
19 545
Підписники
-1324 години
-407 днів
-17130 день
Залучення підписників
грудень '25
грудень '25
+49
в 0 каналах
листопад '25
+80
в 0 каналах
Get PRO
жовтень '25
+58
в 0 каналах
Get PRO
вересень '25
+72
в 0 каналах
Get PRO
серпень '25
+90
в 0 каналах
Get PRO
липень '25
+94
в 0 каналах
Get PRO
червень '25
+134
в 0 каналах
Get PRO
травень '25
+129
в 0 каналах
Get PRO
квітень '25
+116
в 0 каналах
Get PRO
березень '25
+234
в 2 каналах
Get PRO
лютий '25
+184
в 2 каналах
Get PRO
січень '25
+136
в 2 каналах
Get PRO
грудень '24
+139
в 2 каналах
Get PRO
листопад '24
+230
в 2 каналах
Get PRO
жовтень '24
+187
в 2 каналах
Get PRO
вересень '24
+168
в 2 каналах
Get PRO
серпень '24
+79
в 2 каналах
Get PRO
липень '24
+53
в 2 каналах
Get PRO
червень '24
+105
в 2 каналах
Get PRO
травень '24
+363
в 2 каналах
Get PRO
квітень '24
+355
в 7 каналах
Get PRO
березень '24
+364
в 7 каналах
Get PRO
лютий '24
+324
в 7 каналах
Get PRO
січень '24
+381
в 6 каналах
Get PRO
грудень '23
+11 939
в 7 каналах
Get PRO
листопад '23
+406
в 5 каналах
Get PRO
жовтень '23
+721
в 7 каналах
Get PRO
вересень '23
+1 678
в 5 каналах
Get PRO
серпень '230
в 8 каналах
Get PRO
липень '230
в 2 каналах
Get PRO
червень '23
+10
в 0 каналах
Get PRO
травень '23
+592
в 2 каналах
Get PRO
квітень '23
+814
в 0 каналах
Get PRO
березень '23
+68
в 0 каналах
Get PRO
лютий '23
+1 035
в 0 каналах
Get PRO
січень '230
в 0 каналах
Get PRO
грудень '220
в 0 каналах
Get PRO
листопад '220
в 0 каналах
Get PRO
жовтень '22
+69
в 0 каналах
Get PRO
вересень '22
+363
в 0 каналах
Get PRO
серпень '22
+342
в 0 каналах
Get PRO
липень '22
+424
в 0 каналах
Get PRO
червень '22
+492
в 0 каналах
Get PRO
травень '22
+238
в 0 каналах
Get PRO
квітень '22
+216
в 0 каналах
Get PRO
березень '22
+427
в 0 каналах
Get PRO
лютий '22
+181
в 0 каналах
Get PRO
січень '22
+14 806
в 0 каналах
Дата
Залучення підписників
Згадування
Канали
26 грудня0
25 грудня+1
24 грудня+2
23 грудня+2
22 грудня+4
21 грудня+1
20 грудня0
19 грудня+2
18 грудня+4
17 грудня+3
16 грудня+2
15 грудня+1
14 грудня+2
13 грудня+1
12 грудня+5
11 грудня+1
10 грудня0
09 грудня+2
08 грудня+4
07 грудня+3
06 грудня0
05 грудня+1
04 грудня+3
03 грудня+2
02 грудня0
01 грудня+3
Дописи каналу
🐸 Подборка вакансий для C++-разработчиков за неделю C++/Qt/QML-разработчик под Android (Транспорт) — от 250 000 ₽ Удалёнка Senior C++ engineer («Разработка ядер рекламной платформы») C++ Developer (Real-Time Audio Processing) — от 288 000 и до 320 000₽ Удалёнка Senior С++ Backend Developer (Поиск) — от 350 000 ₽ Удалёнка Разработчик графических приложений Qt/С++ — от 150 000 и до 250 000 ₽ Удалёнка System С++ developer — Офис (Москва) Библиотека C/C++ разработчика

1 00620

2
📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #развлекалово
📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #развлекалово
1 276
3
WANTED: C++ ЭКСПЕРТ Обвиняется в прямом управлении памятью и знании тёмных углов стандарта. Если ты выжил в мире плюсов и гот
WANTED: C++ ЭКСПЕРТ Обвиняется в прямом управлении памятью и знании тёмных углов стандарта. Если ты выжил в мире плюсов и готов учить этому других — мы тебя ищем. Приметы: — в совершенстве владеет C/C++ (понимает логику Go или Java); — умеет писать производительный и безопасный код; — обладает терпением и талантом наставника; — хочет выйти на большую аудиторию Proglib. Награда: — вознаграждение за твой вклад в обучение; — статус признанного эксперта в комьюнити; — поддержка твоего личного бренда. Сдаться добровольно P.S. Знаешь «плюсовика», который знает слишком много? Сдай его нам.
1 386
4
📕 Написал код на С++23, а он запустился на Windows 95... Представь: пишешь код с модулями C++23 в Visual Studio 2026, жмёшь
📕 Написал код на С++23, а он запустился на Windows 95... Представь: пишешь код с модулями C++23 в Visual Studio 2026, жмёшь компиляцию... И получаешь exe для Windows 95. Подробный разбор нестандартного подхода к ретро-программированию с использованием всех благ современного C++. ❗Основные шаги: • компиляция только в 32-bit x86 с отключёнными исключениями и STL • использование линкера от Visual C++ 6.0 для финальной сборки • создание минимальной реализации std с базовыми контейнерами Фокус на практическом применении — портирование проектов LDL и движка Arcanum на C++23 с сохранением поддержки Windows 98. Актуально для разработчиков, которые создают новые игры, моды и улучшения для старых систем в рамках комьюнити вроде Old-Games.ru. Главное преимущество — один и тот же код работает и на современной системе (для отладки), и на ретро-железе (для финального запуска). 👉 Статья Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #свежак
1 474
5
🎅 Секретный Санта для айтишников от Proglib.academy Весь этот год команда Академии запускала курсы для айтишников. А под Нов
🎅 Секретный Санта для айтишников от Proglib.academy Весь этот год команда Академии запускала курсы для айтишников. А под Новый год мы запускаем новый курс по ИИ-агентам и ставим под ёлку самый свежий стек 2025 года и обучение проектированию автономных нейросетевых экосистем — от LLM и ReAct-циклов до мультиагентных систем, LangGraph, AutoGen и продакшн-практик. 🎁 Хотим дарить подарки и приглашаем вас поучаствовать в конкурсе: 1️⃣ Упомяните курс Академии у себя в блоге. 2️⃣ Пришлите скрин сюда. 3️⃣ Получите секретный промокод на 10 000 ₽ при оплате любого курса. Подходит всё — соцсети, блоги, Telegram-каналы от 300 подписчиков и более. 🎄 Акция действует до Нового года. Win-win, всё как мы любим!
1 481
6
🐥 Почему std::chrono::duration не хранит единицы измерения? duration<int, std::milli> не хранит информацию о миллисекундах. На самом деле это compile-time магия. ✅ Как это работает: duration — это просто обёртка над числом. Шаблонный параметр std::milli (он же std::ratio<1, 1000>) существует только на этапе компиляции. duration<int64_t, std::milli> ms(1000); // В памяти: просто int64_t со значением 1000 // Информации "это миллисекунды" в рантайме НЕТ 🍴 Механизм конверсии: Когда вы пишете duration_cast<seconds>(ms), компилятор вычисляет 1000 / 1000 = 1 на этапе компиляции через механизм std::ratio. Никаких делений в рантайме при конверсии целых периодов. Вывод: Zero-overhead абстракция. В release-сборке duration<int, milli> — это буквально int с type safety. Но осторожно: duration_cast может обрезать дробную часть при конверсии вниз. 📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #под_капотом
1 612
7
AI-агенты: когда точность архитектуры важнее магии промптов Мы смотрим на ИИ как на инженерную задачу. Мы учим строить автоно
AI-агенты: когда точность архитектуры важнее магии промптов Мы смотрим на ИИ как на инженерную задачу. Мы учим строить автономные системы с детерминированной логикой, контролем ресурсов и предсказуемым поведением. Основные темы: — управление состояниями в LangGraph для проектирования надёжных стейт-машин; — работа с данными через RAG-системы на базе векторных хранилищ; — автоматизация и мониторинг через связку n8n и LangSmith для полного аудита; — безопасность системы с внедрением Guardrails для защиты от некорректных запросов. Постройте масштабируемую AI-систему с инженерным подходом. Записаться на курс
1 574
8
Перевод: Правительство США рассекретило PoC (Proof of Concept) 📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разра
Перевод: Правительство США рассекретило PoC (Proof of Concept) 📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #развлекалово
1 675
9
⚡️ От SFINAE к Concepts: эволюция метапрограммирования Compile-time магия прошла долгий путь от криптографического SFINAE к читаемым concepts. Эра 1: Классический SFINAE (C++98) template<typename T> typename std::enable_if<std::is_integral<T>::value, T>::type increment(T value) { return value + 1; } // Что происходит? Кто знает... Эра 2: Type traits (C++11/14) template<typename T> std::enable_if_t<std::is_integral_v<T>, T> increment(T value) { return value + 1; } // Чуть лучше с _t и _v суффиксами Эра 3: if constexpr (C++17) template<typename T> T process(T value) { if constexpr (std::is_integral_v<T>) { return value + 1; } else if constexpr (std::is_floating_point_v<T>) { return value * 1.1; } else { return value; } } // Читается как обычный код! Эра 4: Concepts (C++20) template<std::integral T> T increment(T value) { return value + 1; } // Или auto increment(std::integral auto value) { return value + 1; } // Красота и понятность! 😏 А какой подход вам больше нравится? Напиши в комментариях! 📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #константная_правильность
1 661
10
🤟 Путь к мечте продолжается Два года российские нейрохирурги отказывали мне в операции, запугивая последствиями. В итоге пое
🤟 Путь к мечте продолжается Два года российские нейрохирурги отказывали мне в операции, запугивая последствиями. В итоге поехал в Казахстан — сделали две паллидотомии, которые «нельзя было делать». Речь на месте, здоровье улучшается. Параллельно учу C++ и ищу работу. История о том, как не сдаваться, когда система говорит «нет». 👉 Продолжение... 📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #буст
1 697
11
No text
No text
1 820
12
🔥 Почему throw не просто делает goto к catch-блоку? Возможно ты думал, что исключение — это прыжок в код обработчика. На самом деле между throw и catch происходит сложный процесс деструкции объектов. Stack Unwinding — это механизм раскрутки стека, который компилятор генерирует автоматически. Когда летит исключение, среда выполнения проходит назад по стеку вызовов и вызывает деструкторы всех локальных объектов в обратном порядке их создания. Компилятор создаёт специальные таблицы (exception tables в формате DWARF или SEH), которые содержат информацию о том, где какие объекты живут и какие деструкторы нужно вызвать. При броске исключения runtime читает эти таблицы и пошагово очищает стек. void func() { Resource r1; // деструктор будет вызван Resource r2; // и этот тоже throw Error(); } ❌ Если во время раскрутки деструктор сам бросит исключение, вызывается std::terminate(). Поэтому правило: деструкторы должны быть noexcept. ❗️Stack unwinding гарантирует безопасность ресурсов, но имеет накладные расходы: даже если исключение не бросается, таблицы занимают место в бинарнике. В embedded-системах часто отключают исключения именно поэтому. 📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #под_капотом
2 103
13
Что под капотом у агентов? Вы привыкли работать с памятью и потоками напрямую. AI-агенты — это новый уровень абстракции, но п
Что под капотом у агентов? Вы привыкли работать с памятью и потоками напрямую. AI-агенты — это новый уровень абстракции, но проблемы там те же: оптимизация, задержки, стоимость вычислений. В новой версии курса «Разработка AI-агентов» мы добавили факультатив "Научный взгляд" и углубились в техническую часть. Для тех, кто любит хардкор: — Optimization: RAG, векторный поиск, работа с контекстом. — System Design: Мультиагентные системы (AutoGen, LangGraph) как распределенные системы. — Infrastructure: Работа на реальном GPU-кластере (предоставляем доступ). Это знания, актуальные для 2026 года, когда AI будет встроен в каждое устройство. ⚡️ Акция 3 в 1: Берешь курс по агентам — получаешь два любых других бесплатно (например, Алгоритмы или Математику, чтобы понимать ML-базу). Upgrade your skills
2 178
14
👀 Почему std::async может заблокировать ваш поток? Многие думают, что std::async всегда создаёт новый поток. На самом деле это не так. По умолчанию std::async использует политику запуска std::launch::async | std::launch::deferred. Это означает, что реализация сама решает, выполнить задачу асинхронно или отложить до вызова get(). auto future = std::async(heavy_task); // Может НЕ запуститься прямо сейчас! auto result = future.get(); // Тут может начать выполняться 🍴 Под капотом: При std::launch::deferred задача сохраняется как callable объект и выполняется синхронно при первом обращении к future. Никакого нового потока. ✏️ Что происходит в памяти: Создаётся shared state, хранящий либо результат, либо исключение. Deferred-задача живёт в виде объекта функции до момента вызова. 🧋Вывод: Если вам нужна гарантия параллельности, явно указывайте std::launch::async. Иначе рискуете получить синхронное выполнение там, где ожидали асинхронное. auto future = std::async(std::launch::async, heavy_task); 📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #под_капотом
2 174
15
👀 Почему std::async может заблокировать ваш поток? Многие думают, что std::async всегда создаёт новый поток. На самом деле это не так. По умолчанию std::async использует политику запуска std::launch::async | std::launch::deferred. Это означает, что реализация сама решает, выполнить задачу асинхронно или отложить до вызова get(). auto future = std::async(heavy_task); // Может НЕ запуститься прямо сейчас! auto result = future.get(); // Тут может начать выполняться 🍴 Под капотом: При std::launch::deferred задача сохраняется как callable объект и выполняется синхронно при первом обращении к future. Никакого нового потока. ✏️ Что происходит в памяти: Создаётся shared state, хранящий либо результат, либо исключение. Deferred-задача живёт в виде объекта функции до момента вызова. 🧋Вывод: Если вам нужна гарантия параллельности, явно указывайте std::launch::async. Иначе рискуете получить синхронное выполнение там, где ожидали асинхронное. auto future = std::async(std::launch::async, heavy_task); 📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #под_капотом
2
16
📰 Свеженькое из мира C++ Подготовили подборку самых интересных материалов за неделю о разных аспектах программирования и инт
📰 Свеженькое из мира C++ Подготовили подборку самых интересных материалов за неделю о разных аспектах программирования и интересных проектах в мире C++. 😎 Интересное: • Рализация своего ECS движка — разбор реализации hand-made ECS движка • std::promise — move-only тип — описание проблемы с копированием std::promise • 5 профессий в IT, которые появились благодаря ИИ — статья о том как ИИ создаёт профессии • std::generator в C++23: как упростить код сопрограмм — доклад об использовании стандартного интерфейса, который превращает генерацию последовательностей в одну строку 🔹📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #свежак
2 144
17
🎓 Твой опыт стоит дорого — стань экспертом Proglib Academy Чувствуешь, что накопил достаточно знаний, чтобы делиться ими с д
🎓 Твой опыт стоит дорого — стань экспертом Proglib Academy Чувствуешь, что накопил достаточно знаний, чтобы делиться ими с другими? Мы ищем сильных практиков, которые хотят попробовать себя в роли: — преподавателей; — авторов курсов; — наставников. Это возможность не только монетизировать экспертизу, но и прокачать личный бренд, структурировать собственные знания и вырастить новое поколение специалистов. 👉 Заполни короткую анкету
2 176
18
Вопрос: Можно ли получить stacktrace в constexpr контексте? Ответ: Нет! std::stacktrace::current() (C++23) не является conste
Вопрос: Можно ли получить stacktrace в constexpr контексте? Ответ: Нет! std::stacktrace::current() (C++23) не является constexpr функцией, так как stacktrace это runtime. Компилятор не имеет «call stack» во время компиляции в том же смысле.
2 112
19
🐸 Подборка вакансий для C++-разработчиков за неделю C++ Developer (General Components / Sensors) — от 350 000 ₽ Офис/Гибрид (Москва) C++ Developer (Real-Time Audio Processing) — от 288 000 и до 320 000 gross Backend-разработчик — от 200 000 ₽ Удалёнка C++ Team Lead (3D Картa) — от 250 000 ₽ Удалёнка C++ Developer (Middle/Senior) — от 2 000 и до 4 000$ Удалёнка Senior C++ Software Engineer (SaaS) — от 4 000 $ Удалёнка Библиотека C/C++ разработчика
2 328
20
📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #развлекалово
📍Навигация: Вакансии • Задачи • Собесы Библиотека C/C++ разработчика #развлекалово
2 369