ru
Feedback
Библиотека собеса по C++ | вопросы с собеседований

Библиотека собеса по C++ | вопросы с собеседований

Открыть в Telegram

Вопросы с собеседований по C++ и ответы на них. По рекламе: @proglib_adv Учиться у нас: https://proglib.io/w/9ccf302b Для обратной связи: @proglibrary_feeedback_bot

Больше
8 323
Подписчики
-324 часа
+117 дней
-1830 день
Архив постов
Какое преимущество дает [[nodiscard]] атрибут?
Anonymous voting

Что такое concepts в C++20?
Anonymous voting

Что такое "memory leak" (утечка памяти)?
Anonymous voting

Как работает std::invoke?
Anonymous voting

В чем разница между std::function и указателем на функцию?
Anonymous voting

Что такое fold expression в C++?
Anonymous voting

🧑🏻‍💻Хотите писать безопасный, масштабируемый и читаемый код на современном C++? Актуальное повышение квалификации «C++ Dev
🧑🏻‍💻Хотите писать безопасный, масштабируемый и читаемый код на современном C++? Актуальное повышение квалификации «C++ Developer. Professional» создано для тех, кто хочет выйти за пределы базового синтаксиса и овладеть актуальными практиками разработки — от C++20 и C++23 до многопоточности, шаблонов и сетевого взаимодействия. Программа составлена практикующими разработчиками и обновляется с учётом требований индустрии. Вы выполните 14 практических заданий, отработаете паттерны проектирования, оптимизацию, работу с памятью и получите диплом, который котируется в ведущих IT-компаниях. ⚡️Набор закрывается совсем скоро, это последний шанс пройти вступительное тестирование и получить скидку на обучение: https://otus.pw/8QDNf/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, Erid 2VtzqwzpHbn

Что означает аббревиатура SBO в контексте std::string?
Anonymous voting

Какое главное отличие std::map от std::unordered_map?
Anonymous voting

Что такое RVO и NRVO?
Anonymous voting

Что означает выражение alignof(T)? ❤️ Размер типа T в байтах 🔥 Требуемое выравнивание для типа T 🙏 Смещение типа T в структуре 🌚 Количество байт, которое нужно добавить для выравнивания T Ответ: 🔥alignof(T) возвращает требуемое выравнивание для типа T в байтах.

📚 Загадочная библиотека setjmp.h — неочевидный инструмент для управления потоком выполнения Библиотека setjmp.h предоставляет два необычных макроса:setjmp — сохраняет текущее состояние программы (регистры, стек) в буфер jmp_buflongjmp — «откатывает» выполнение к сохранённому состоянию, как прыжок во времени


#include <stdio.h>
#include <setjmp.h>

jmp_buf jump_buffer;

void risky_function() {
    printf("Готовимся к прыжку...\n");
    longjmp(jump_buffer, 42);  // Прыжок обратно в setjmp!
}

int main() {
    int ret = setjmp(jump_buffer);
    if (ret == 0) {
        printf("Первая инициализация...\n");
        risky_function();
    } else {
        printf("Вернулись с кодом: %d\n", ret);  // Выведет 42!
    }
    return 0;
}
⚠️ Осторожно! • Не заменяет исключения — нет вызова деструкторов (как в C++) • Опасность утечек — если между setjmp и longjmp выделялась память, она не освободится • Портит стек — может сломать логику функций 🛠 Где может пригодиться? • Обработка критических ошибок (а-ля «аварийный выход») • Код для встраиваемых систем, где нужно быстро восстановить состояние • Нестандартные хаки (но лучше так не делать 😈) Библиотека C/C++ разработчика

Что произойдет при использовании memcpy для копирования объекта с виртуальными функциями? ❤️ Объект будет правильно скопирован 🔥 Виртуальная таблица не будет скопирована правильно 🙏 Компилятор выдаст ошибку 🌚 Это неопределенное поведение Библиотека C/C++ разработчика

💼⌛️ ТОП-5 причин, почему программист не может долго найти работу Почему некоторые разработчики остаются "между работами" мес
💼⌛️ ТОП-5 причин, почему программист не может долго найти работу Почему некоторые разработчики остаются "между работами" месяцы? Не всегда дело в нехватке вакансий или «рынок просел». Часто дело в подходе к поиску проекта. Вроде бы есть опыт, стек, даже pet-проекты, но офферов всё нет. Часто корень проблемы — неумение продать себя правильно. Отказ выполнять тестовые задания, считая их ненужными или обидными. Кроме того, нежелание рассматривать стажировки как стартовую площадку для получения опыта и расширения профессиональных связей также может замедлить процесс трудоустройства. И это далеко не все возможные причины. 🔗 Подробнее в статье 🐸 Библиотека джависта

Что выведет код? ❤️ 1 4 8 🔥 1 4 4 🙏 Зависит от платформы 🌚 Ошибка компиляции Библиотека C/C++ разработчика
Что выведет код? ❤️ 1 4 8 🔥 1 4 4 🙏 Зависит от платформы 🌚 Ошибка компиляции Библиотека C/C++ разработчика

📈Плоские контейнеры и C++: как оптимизировать производительность и память Пытаетесь сделать код быстрее и экономичнее? Время
📈Плоские контейнеры и C++: как оптимизировать производительность и память Пытаетесь сделать код быстрее и экономичнее? Время научиться использовать плоские контейнеры в C++! На открытом уроке 15 апреля в 20:00 мск мы разберемся, что такое плоские контейнеры! Что вас ждет: - Описание плоских контейнеров в C++: какие они бывают и чем отличаются от стандартных. - Реальные примеры, когда и почему плоские контейнеры — это ваша идеальная пара для эффективной работы с данными. - Практическая часть: сравнение с традиционными контейнерами и примеры применения на реальных задачах. Кому будет полезно: • Программистам C++, работающим с большими объемами данных. • Разработчикам высокопроизводительных приложений и игр. • Инженерам, которым нужно минимизировать использование памяти и повысить эффективность. 👉Регистрируйтесь прямо сейчас и получите скидку на большое обучение «C++ Developer. Professional»: https://otus.pw/JnRa/ Реклама. ООО «Отус онлайн-образование», ОГРН 1177746618576, Erid 2Vtzquveb2p

👍 Acatch 🥲 catch 👏 catchA 🌚 Программа аварийно завершится Библиотека C/C++ разработчика
👍 Acatch 🥲 catch 👏 catchA 🌚 Программа аварийно завершится Библиотека C/C++ разработчика

В чем разница между std::atomic::load() и std::atomic::exchange()? 👍 load() атомарно читает значение, exchange() атомарно заменяет и возвращает старое 🤔 load() блокирует потоки, exchange() не блокирует 👏 load() работает быстрее, exchange() безопаснее 🌚 load() не имеет побочных эффектов, exchange() изменяет все копии объекта

💵💻🌍 Как не налететь на грабли: оформление и выплаты при валютной удалёнке из России Если вы следили за нашим мини-сериалом
💵💻🌍 Как не налететь на грабли: оформление и выплаты при валютной удалёнке из России Если вы следили за нашим мини-сериалом о валютной удаленке, то уже знаете: 🔜 Как найти зарубежную удалёнку и зарабатывать больше 🔜 Как пройти путь от резюме до оффера И вот финальная часть — потому что оффер это только начало. Что в статье: 📍 Все легальные способы получения валютных выплат, от ИП в Грузии до пейролл-сервисов. 📍 Реальные риски: блокировки, штрафы, политическая турбулентность. 📍 Юридические тонкости и что писать в контракте, чтобы не остаться без денег. 📍 Как не влететь на налоги и почему «авось» — плохой бизнес-план. Читать гайд по выживанию айтишника в валютных джунглях 🔗

👻 Что такое предкомпилированные заголовки (PCH)? Принцип работы: PCH позволяют компилятору обработать заголовочные файлы один раз и сохранить промежуточное представление. При последующих компиляциях используется уже готовый результат вместо повторной обработки. Необходимые изменения: • Создание специального заголовочного файла со всеми часто используемыми включениями • Настройка системы сборки для использования PCH • Обновление PCH при изменении включенных в него заголовков Совместимость: • GCC: -include pch.h с флагом -x c++-header для создания • Clang: аналогично GCC • MSVC: директивы #pragma hdrstop и /Yu

Библиотека собеса по C++ | вопросы с собеседований - Статистика и аналитика Telegram-канала @cpp_interview_lib