Библиотека собеса по C++ | вопросы с собеседований
Открыть в Telegram
Вопросы с собеседований по C++ и ответы на них. Как запустить своего ии-агента: https://clc.to/tvpmDQ По рекламе: @tproger_sales_bot Учиться у нас: https://proglib.io/w/9ccf302b Для обратной связи: @proglibrary_feeedback_bot
Больше4 601
Подписчики
-224 часа
-57 дней
-1330 дней
Архив постов
🐛 Баг на выходные: порядок ASSERT vs EXPECT
Кажется, разница между ASSERT_* и EXPECT_* — мелочь. Но она меняет поведение теста кардинально.
TEST(VectorTest, CheckElements) {
std::vector<int> v = {1, 2, 3};
ASSERT_EQ(v.size(), 4u); // (1)
EXPECT_EQ(v[0], 1); // (2)
EXPECT_EQ(v[3], 4); // (3)
}
Что произойдёт при выполнении теста? Какие строки выполнятся, а какие нет? Когда использование ASSERT_EQ вместо EXPECT_EQ — правильное решение, а когда — опасное?
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#междусобойчикЧто произойдёт, если new не может выделить память, а std::set_new_handler не установлен?
Какова сложность алгоритма std::inplace_merge() при наличии достаточного объёма памяти?
Что означал спецификатор export для шаблонов?
Repost from Библиотека задач по C++ | тесты, код, задания
Какая функция позволяет узнать, находится ли выполнение в процессе раскрутки стека?
🧩 Выходной челлендж: noexcept или не noexcept?
Многие добавляют noexcept "на глаз". А ты знаешь, где это критично?
class DataStore {
std::vector<int> data;
public:
DataStore() = default;
DataStore(DataStore&& other) {
data = std::move(other.data);
}
void add(int value) {
data.push_back(value);
}
};
Задача: В какие методы нужно добавить noexcept и почему?
Подсказка: один из них критически важен для производительности при работе с контейнерами STL.
💬 Делись своими мыслями! Объясни не только ЧТО добавить, но и ПОЧЕМУ это важно.
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#междусобойчикПочему trivially copyable типы важны для производительности?
Что НЕ является zero-cost abstraction в C++?
Какая главная цель unit-тестирования?
Что такое Test Fixture в контексте unit-тестирования?
Зачем нужен флаг -g при компиляции?
🧩 Задача на выходные: загадка EOF
std::ifstream file("data.txt");
std::string line;
while (!file.eof()) {
std::getline(file, line);
std::cout << line << std::endl;
}
Задача: В чём подвох с проверкой eof()? Как правильно организовать цикл чтения?
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
#междусобойчикКак изначально назывался язык C++, когда Бьёрн Страуструп начал его разработку в 1979 году?
Какой уровень протокола нужно указать для установки опции TCP_NODELAY?
Что такое "memory-mapped file" и когда его использовать?
Какой системный вызов в Linux позволяет реализовать zero-copy передачу данных между файловым дескриптором и сокетом?
🔥 Задача на выходные: загадка optional chains
std::optional<std::string> get_name() {
return "Alice";
}
int main() {
auto result = get_name()
.transform([](auto&& s) { s += " Smith"; return s; })
.transform([](auto&& s) { s += " Jr."; return s; });
std::cout << *result << std::endl;
std::cout << *get_name() << std::endl;
}
🐸 Задача: Что выведет этот код? Изменится ли исходное значение из get_name()? Почему компилятор может это скомпилировать или отклонить?
📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчикаЧто гарантирует std::chrono::steady_clock в отличие от system_clock?
