Forwarded from Библиотека собеса по C++ | вопросы с собеседований
Что такое std::packaged_task в C++?
Anonymous Quiz
18%
Контейнер для хранения нескольких std::thread
54%
Обёртка над вызываемым объектом, связывающая его с std::future
11%
Специализация std::function для асинхронных вызовов
7%
Синхронный аналог std::async без создания потока
10%
Атомарный тип для передачи данных между потоками
❤2👍1
C++23 принёс
std::expected. Это не обёртка над optional — это принципиально другая семантика, которую важно понять сразу.std::optional<T> // возвращает «значение или ничего»
std::expected<T,E> // возвращает «значение или причина отсутствия»
С его помощью можно вернуть код ошибки
expected<int, ErrorCode> parse(string s); // Пустой optional говорит «нет». Expected говорит «нет, потому что...»
expected<T,E> — это discriminated union из T и E с флагом. Размер: max(sizeof(T), sizeof(E)) + 1 байт на флаг. Аналогично variant<T, unexpected<E>>.Если caller должен знать причину —
expected. Если причина не важна — optional. Если ошибка аномальна и не должна обрабатываться в каждой точке — исключение. Это три разных инструмента для трёх разных ситуаций.📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#под_капотом
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤2
😎 Топ-вакансий для C++ разработчиков за неделю
C++ разработчик — Удалёнка
C++ Developer (Search) — от 250 000 и до 400 000 ₽ Гибрид (Москва)
С разработчик — Удалёнка
✍️ Еще больше топовых вакансий — в нашем канале C++ jobs
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#буст
C++ разработчик — Удалёнка
C++ Developer (Search) — от 250 000 и до 400 000 ₽ Гибрид (Москва)
С разработчик — Удалёнка
✍️ Еще больше топовых вакансий — в нашем канале C++ jobs
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#буст
👍1😁1
📖 Словарь айтишника: почему джун сидит на шадовинге, сеньор занимается гейткипингом, а тимлид — на бенче
Эти слова звучат на каждом созвоне, в каждом оффере и каждом чате с тимлидом. Пора наконец разобраться, что они значат
👀 Читать дальше
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#свежак
Эти слова звучат на каждом созвоне, в каждом оффере и каждом чате с тимлидом. Пора наконец разобраться, что они значат
👀 Читать дальше
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#свежак
😁2👍1
Forwarded from Библиотека собеса по C++ | вопросы с собеседований
💣 Задача на выходные: контекст с состоянием
Коллега написал менеджер транзакций. На code review всё выглядит норм — но остаётся ощущение, что тут есть баги 😸
🎯 Задание: Найди минимум 3 проблемы в этом коде.
🙂 Подумай: thread safety, исключения в деструкторах, вложенные транзакции.
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#междусобойчик
Коллега написал менеджер транзакций. На code review всё выглядит норм — но остаётся ощущение, что тут есть баги 😸
class TransactionContext {
static TransactionContext* current;
std::vector<std::function<void()>> rollbacks;
public:
static TransactionContext& get() {
return *current;
}
void addRollback(std::function<void()> fn) {
rollbacks.push_back(fn);
}
TransactionContext() { current = this; }
~TransactionContext() {
for (auto& rb : rollbacks) rb();
current = nullptr;
}
};🎯 Задание: Найди минимум 3 проблемы в этом коде.
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
❤3😁2👍1
📰 Свеженькое из мира C++
Подготовили подборку самых интересных материалов за неделю о разных аспектах программирования и интересных проектах в мире C++.
😎 Интересное:
• Реферальный рекрутинг в IT — альтернативный способ устроиться на работу
• Избавляемся от комментариев — способы очистки проекта от мёртвых комментариев
• Язык Flame — новая надежда убить язык C++
• std::expected — альтернатива std::optional возвращающая понятную ошибку
• Словарь айтишника — немного сленга из мира IT
🔹📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#свежак
Подготовили подборку самых интересных материалов за неделю о разных аспектах программирования и интересных проектах в мире C++.
😎 Интересное:
• Реферальный рекрутинг в IT — альтернативный способ устроиться на работу
• Избавляемся от комментариев — способы очистки проекта от мёртвых комментариев
• Язык Flame — новая надежда убить язык C++
• std::expected — альтернатива std::optional возвращающая понятную ошибку
• Словарь айтишника — немного сленга из мира IT
🔹📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#свежак
👍2❤1
⌚ Современный C++ для встраиваемых систем
Доклад Рутвича Карканиса с CppCon — подробный разбор того, как использовать современный C++ в embedded-системах с ограниченными ресурсами: от базовой семантики до продвинутой оптимизации.
❗ Ключевые моменты доклада:
• динамический vs статический полиморфизм — скрытая стоимость виртуальных функций и vtable в условиях жёстких ограничений памяти
• шаблоны, концепции C++20 и SFINAE — как перенести максимум работы на этап компиляции и получить нулевые накладные расходы в рантайме
• управление памятью,
Основной фокус — практические паттерны и техники, которые позволяют писать чистый, безопасный и производительный C++ даже в условиях embedded, где нет ни кучи памяти, ни роскоши ОС.
📺 Доклад
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#свежак
Доклад Рутвича Карканиса с CppCon — подробный разбор того, как использовать современный C++ в embedded-системах с ограниченными ресурсами: от базовой семантики до продвинутой оптимизации.
❗ Ключевые моменты доклада:
• динамический vs статический полиморфизм — скрытая стоимость виртуальных функций и vtable в условиях жёстких ограничений памяти
• шаблоны, концепции C++20 и SFINAE — как перенести максимум работы на этап компиляции и получить нулевые накладные расходы в рантайме
• управление памятью,
placement new, volatile и атомарные операции — инструменты, без которых невозможно написать надёжный код для микроконтроллеровОсновной фокус — практические паттерны и техники, которые позволяют писать чистый, безопасный и производительный C++ даже в условиях embedded, где нет ни кучи памяти, ни роскоши ОС.
📺 Доклад
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#свежак
👍4❤3👾2🥱1
Самый востребованный навык в ИТ в 2026-м — навык создания ИИ-агентов
Мы полностью переработали курс «Разработка AI-агентов» под реалии 2026 года. Никакой долгой теории — с самого начала пишем код. Обучать и делиться набитыми шишками будут эксперты-практики из Газпромбанка, Альфа-Банка и других бигтехов.
В программе:
— архитектура автономных систем с тестированием, ReAct-циклами и контролем токенов;
— практическая работа с актуальными фреймворками LangGraph, AutoGen, MCP и CrewAI;
— настройка продвинутого RAG для парсинга документов и точного поиска;
— внедрение решений с учётом действующего законодательства (152-ФЗ);
— дипломная работа, за основу которой можно взять свой рабочий проект или задачу, которую предложим мы.
Эксперты поделятся инсайтами из реального продакшна — тем, о чём вам никогда не расскажет ни одна нейросеть.
Ах да, чуть не забыли! Дарим промокодAGENTSWEB на скидку 10 000 рублей и два курса сверху при покупке до 15 марта 🎁
→ Стать AI-инженером
Мы полностью переработали курс «Разработка AI-агентов» под реалии 2026 года. Никакой долгой теории — с самого начала пишем код. Обучать и делиться набитыми шишками будут эксперты-практики из Газпромбанка, Альфа-Банка и других бигтехов.
В программе:
— архитектура автономных систем с тестированием, ReAct-циклами и контролем токенов;
— практическая работа с актуальными фреймворками LangGraph, AutoGen, MCP и CrewAI;
— настройка продвинутого RAG для парсинга документов и точного поиска;
— внедрение решений с учётом действующего законодательства (152-ФЗ);
— дипломная работа, за основу которой можно взять свой рабочий проект или задачу, которую предложим мы.
Эксперты поделятся инсайтами из реального продакшна — тем, о чём вам никогда не расскажет ни одна нейросеть.
Запись первого открытого вебинара, на котором мы вместе с руководителем AI-направления в Альфа-Банке Полиной Полуниной пилили агента в прямом эфире.
Ах да, чуть не забыли! Дарим промокод
→ Стать AI-инженером
😁2❤1🥱1
Forwarded from Библиотека задач по C++ | тесты, код, задания
Forwarded from Библиотека задач по C++ | тесты, код, задания
Что выведет этот код?
Anonymous Quiz
17%
false
12%
Ошибка компиляции
11%
0
8%
Неопределённое поведение
53%
1
😁1🌚1
С точки зрения assembly при включённой оптимизации (-O2)
std::mem_fn и эквивалентная лямбда дают идентичный код. Оба являются callable с inline-дружественной структурой: компилятор видит конкретный тип и инлайнит вызов.std::function<>:// Лямбда — захват this в замыкании
std::function<int(Foo&)> f1 = [](Foo& x) { return x.bar(); };
// mem_fn — хранит pointer-to-member
std::function<int(Foo&)> f2 = std::mem_fn(&Foo::bar);
std::mem_fn явно сигнализирует «это вызов метода». Лямбда гибче, но многословнее. В алгоритмах с однотипными вызовами mem_fn лаконичнее:std::transform(v.begin(), v.end(), out.begin(), std::mem_fn(&Widget::value)); // vs лямбда
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#под_капотом
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🥱2❤1🔥1
🚀 C++23 и дальше: насколько код может стать сладким
На горизонте
✏️ Какую фичу из планируемых в C++26 вы ждёте больше всего? И есть ли что-то, чего в языке, на ваш взгляд, всё ещё не хватает?
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#междусобойчик
C++23 принёс ряд долгожданных улучшений. std::expected — альтернатива исключениям для обработки ошибок в функциональном стиле. std::print вместо printf и cout. Deducing this — явный доступ к *this в методах, открывающий новые паттерны.На горизонте
C++26: static reflection позволит исследовать типы во время компиляции с помощью обычного кода, без макросов. Это революционное изменение — сериализация, ORM, логирование смогут быть написаны на чистом C++ без кодогенерации.Contracts — ещё одна ожидаемая фича: precondition, postcondition, assertion прямо в синтаксисе языка. Документация и проверка в одном месте, опционально проверяемая в runtime.📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
❤5🥱3👍1
У «Библиотеки программиста» появился резервный канал в мессенджере MAX
Он нужен исключительно для связи с теми, кто не может следить за обновлениями здесь из-за трудностей с доступом. Поэтому, если вы видите это сообщение, распространите его среди жильцов вашего ЖЭКа.
Контент в MAX будет дублировать телеграмный — основной нашей площадкой был и остаётся Telegram. Надеемся, это временная мера.
→ Подписаться на «Библиотеку программиста» в MAX
Он нужен исключительно для связи с теми, кто не может следить за обновлениями здесь из-за трудностей с доступом. Поэтому, если вы видите это сообщение, распространите его среди жильцов вашего ЖЭКа.
Контент в MAX будет дублировать телеграмный — основной нашей площадкой был и остаётся Telegram. Надеемся, это временная мера.
→ Подписаться на «Библиотеку программиста» в MAX
1😁14😢7🌚5👍1🥱1
Кажется, мы окончательно перешли от игрушек к суровому AgentOps
Приглашаем на наш обновлённый курс по разработке ИИ-агентов. Никакой воды про «будущее нейросетей», только инженерный подход.
На курсе мы:
— пошагово строим готовые системы на
— настраиваем кэширование и роутинг, чтобы бот не сожрал токены;
— разбираемся со стейтом, учимся дебажить через time-travel и прикручиваем human-in-the-loop;
— выводим RAG в прод так, чтобы безопасники не завернули архитектуру из-за 152-ФЗ.
В пекло скучные лекции про общую инфраструктуру — сразу фокусируемся на агентных фреймворках и написании кода. Занятия ведут бывалые лиды из Газпромбанка и Альфы, набившие шишки на реальных задачах.
Сегодня последний день, когда можно забрать курс по старым ценам. Базовый тариф сейчас стоит 49 000 ₽ (вместо 62 990 ₽), продвинутый трек — 99 000 ₽ (вместо 124 990 ₽). Если не хочется отдавать всю сумму сразу, есть рассрочка. Торопитесь — на потоке осталось всего 5 мест!
→ Зафиксировать цену и перейти к сборке своих агентов
Приглашаем на наш обновлённый курс по разработке ИИ-агентов. Никакой воды про «будущее нейросетей», только инженерный подход.
На курсе мы:
— пошагово строим готовые системы на
LangGraph, CrewAI и MCP;— настраиваем кэширование и роутинг, чтобы бот не сожрал токены;
— разбираемся со стейтом, учимся дебажить через time-travel и прикручиваем human-in-the-loop;
— выводим RAG в прод так, чтобы безопасники не завернули архитектуру из-за 152-ФЗ.
В пекло скучные лекции про общую инфраструктуру — сразу фокусируемся на агентных фреймворках и написании кода. Занятия ведут бывалые лиды из Газпромбанка и Альфы, набившие шишки на реальных задачах.
Кстати, на днях мы пилили агента в прямом эфире, если пропустили — есть запись вебинара.
Сегодня последний день, когда можно забрать курс по старым ценам. Базовый тариф сейчас стоит 49 000 ₽ (вместо 62 990 ₽), продвинутый трек — 99 000 ₽ (вместо 124 990 ₽). Если не хочется отдавать всю сумму сразу, есть рассрочка. Торопитесь — на потоке осталось всего 5 мест!
→ Зафиксировать цену и перейти к сборке своих агентов
😁2
🤠 Почему опытным PM, PO и руководителям тоже нужен менторинг
Когда карьера уже сложилась, расти становится сложнее: привычные способы
развития перестают работать. Делюсь опытом менторства и наблюдениями о
том, как менторинг помогает PM, PO и руководителям пересобирать свои
управленческие решения.
👀 Читать дальше
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#свежак
Когда карьера уже сложилась, расти становится сложнее: привычные способы
развития перестают работать. Делюсь опытом менторства и наблюдениями о
том, как менторинг помогает PM, PO и руководителям пересобирать свои
управленческие решения.
👀 Читать дальше
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#свежак
😁2
😎 Топ-вакансий для C++ разработчиков за неделю
Senior C/C++ Developer — от 280 000 ₽ Офис (Санкт-Петербург)
C/C++ developer — от 200 000 ₽ Удалёнка/гибрид (Москва)
Embedded C/C++ Developer (Middle) — от 250 000 и до 350 000 ₽ Офис (Москва)
✍️ Еще больше топовых вакансий — в нашем канале C++ jobs
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#буст
Senior C/C++ Developer — от 280 000 ₽ Офис (Санкт-Петербург)
C/C++ developer — от 200 000 ₽ Удалёнка/гибрид (Москва)
Embedded C/C++ Developer (Middle) — от 250 000 и до 350 000 ₽ Офис (Москва)
✍️ Еще больше топовых вакансий — в нашем канале C++ jobs
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#буст
😁2
Размер объекта-замыкания напрямую влияет на то, выделяется ли память в куче при хранении в std::function. Понимание
Small Buffer Optimization критично для low-latency кода.⚡️
std::function содержит внутренний буфер (обычно 16–32 байта в зависимости от реализации). Если closure влезает — heap allocation не происходит:// sizeof closure = sizeof(int) = 4 байта → SBO
auto f1 = [x = 42]() { return x; };
std::function<int()> sf1 = f1; // нет heap allocation
// sizeof closure = 3 * sizeof(string) → возможно > SBO
std::string s1, s2, s3;
auto f2 = [s1, s2, s3]() { return s1 + s2 + s3; };
std::function<int()> sf2 = f2; // возможно heap allocation
🔍 Практическое правило: захватываешь больше 3-х примитивных значений — жди heap allocation. std::string, вектор, любой объект с указателем внутри — почти гарантия.
⚠️ Решения для latency-sensitive кода:
• s
td::move_only_function (C++23) — меньше overhead, нет копирования• Ручной
std::aligned_storage + placement newSBO — деталь реализации стандартной библиотеки, не гарантированная стандартом. Для критичного кода измеряй, не предполагай. Конкретный порог зависит от libstdc++/libc++/MSVC STL.📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#под_капотом
Please open Telegram to view this post
VIEW IN TELEGRAM
❤4👍3