Вопросы на собеседовании C++-разработчика
143 вопроса с реальных собеседований, чаще всего — в компаниях Московский метрополитен, OpenSolutions и Цифровые решения.
Все вопросы
Нашлось 108 вопросов
- Почему после вызова std::remove_if размер контейнера не меняетсяSeniorЦитадель
- Почему в Qt контейнеры можно передавать по значению без накладных расходовSeniorOpenSolutions
- Знакома ли вам идиома RAII?Senior
- Что происходит при вызове чистой виртуальной функции в конструкторе базового класса в C++SeniorOpenSolutions
- Почему нужно использовать make_shared и make_unique вместо создания умных указателей вручнуюSenior
- Зачем нужны самобалансирующиеся деревьяSeniorМосковский метрополитен
- Как исправить дедлок, не задумываясь о порядке захвата mutex?Senior
- Можно ли вызывать виртуальные функции в конструкторе и как это влияет на поведение программы?SeniorLoudplay
- Расскажите про задачу с виртуальными камерами и RTSP серверомSeniorLoudplay
- Что вам интересно найти в работеSeniorЦифровые решения
- Ответь на такие вопросы вслухMock-интервью с ИИ: вопросы голосом и разбор каждого ответа.Попробовать
- Какие виды наследования классов существуют и в чем разница между public, protected и private наследованием в C++SeniorLesta Games
- Возможна ли другая последовательность выполнения потоков кроме последовательного запуска?SeniorЦитадель
- Какие методы синхронного взаимодействия существуют и когда они применяютсяSeniorЦифровые решения
- На каких операционных системах вы работали?SeniorLoudplay
- В чем разница free, delete и delete[] в C++SeniorOpenSolutions
- Почему возникает дедлок при взаимной блокировке двух mutex в двух потоках?Senior
- Приведите примеры из стандартной библиотеки C++, которые используют RAIISenior
- Какой опыт многопоточности и какие библиотеки использовались в C++SeniorOpenSolutions
- Что происходит при двойном исключении в деструкторе и как избежать undefined behavior?SeniorLoudplay
- Комфортно ли работать в маленькой команде с высокой степенью ответственности?SeniorLoudplay
Как проходит собеседование
Собеседование на C++-разработчика обычно состоит из скрининга, одного или двух технических интервью и встречи с командой. На многих позициях обязательна задача на код с разбором сложности. Рекрутер обычно уточняет область: игры, финансы, встраиваемые системы или высоконагруженные сервисы, — потому что вопросы на техническом этапе сильно зависят от неё. Стоит заранее вспомнить, какой стандарт языка ты использовал в работе.
Больше всего вопросов про управление памятью и ресурсами: стек и куча, RAII, умные указатели и их отличия, правило пяти, семантика перемещения. Часто спрашивают про виртуальные функции и таблицу виртуальных методов, неопределённое поведение, шаблоны. По стандартной библиотеке — контейнеры, их устройство и сложность операций, инвалидация итераторов. Для системных и высоконагруженных позиций добавляются многопоточность, атомарные операции и модель памяти.
Чтобы готовиться прицельно, отфильтруй вопросы по своему уровню и начни с тех, что спрашивали чаще всего: счётчик стоит у каждого вопроса. Ответь на несколько из них вслух в mock-интервью, так видно, где ответ разваливается, ещё до настоящего созвона.
Другие направления
Прорепетируй собеседование C++-разработчика
Голосовой ИИ-интервьюер задаст вопросы твоего стека, переспросит и разберёт каждый ответ.