Библиотека собеса по C++ | вопросы с собеседований
4.49K subscribers
447 photos
5 videos
231 links
Вопросы с собеседований по C++ и ответы на них.

По рекламе: @proglib_adv

Учиться у нас: https://proglib.io/w/9ccf302b

Для обратной связи: @proglibrary_feeedback_bot
Download Telegram
Пятница, 19:00. Худшее время для деплоя, но идеальное, чтобы вникнуть в производительные методы поиска эмбеддингов и выделиться на High-load собеседовании.

Как работают современные AI-агенты на уровне данных? Разберём на открытом уроке тему, которую всё чаще спрашивают на интервью.

В программе:

— принципы работы RAG и Fine-tuning;
— работа с векторными индексами (типа FAISS);
— построение пайплайна индексации документов.

Один из спикеров — Алексей Яндутов, ML-инженер в поиске Яндекса.

Это первое занятие курса «Разработка AI-агентов». Исключительно про архитектуру.

Записаться на урок
2
🍴 Задача на выходные: до скольки считает стандарт?

Стандарт C++ гарантирует, что можно зарегистрировать минимум N функций через std::atexit. Найди баг в этом коде:

#include <cstdlib>
#include <iostream>

void dummy_handler() {
static int counter = 0;
std::cout << "Handler " << ++counter << "\n";
}

int main() {
// Регистрируем 100 обработчиков
for (int i = 0; i < 100; ++i) {
if (std::atexit(dummy_handler) != 0) {
std::cerr << "Failed at " << i << "\n";
return 1;
}
}

std::cout << "All registered!\n";
return 0;
}


Вопрос: Гарантирует ли стандарт, что все 100 обработчиков зарегистрируются? Какое минимальное количество гарантируется? Как правильно обработать ошибку регистрации?

📍Навигация: ВакансииЗадачиСобесы

Библиотека C/C++ разработчика

#междусобойчик
Please open Telegram to view this post
VIEW IN TELEGRAM
Какое количество потоков может одновременно удерживать shared_lock на один shared_mutex?
Anonymous Quiz
18%
1
2%
2
20%
Количество ядер процессора
51%
Неограниченное
9%
256
2😁1
Какая сложность у std::unordered_map::find() в худшем случае?
Anonymous Quiz
17%
O(1)
13%
O(log n)
56%
O(n)
11%
O(n log n)
2%
O(√n)
🔥 Задача на выходные: загадка 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++ разработчика
Please open Telegram to view this post
VIEW IN TELEGRAM
Какой системный вызов в Linux позволяет реализовать zero-copy передачу данных между файловым дескриптором и сокетом?
Anonymous Quiz
39%
mmap()
28%
sendfile()
7%
splice()
19%
Как 2, так и 3
6%
copy_file_range()
🔥1
Какой уровень протокола нужно указать для установки опции TCP_NODELAY?
Anonymous Quiz
12%
SOL_SOCKET
14%
IPPROTO_IP
51%
IPPROTO_TCP
16%
SOL_TCP
6%
IPPROTO_UDP
Как изначально назывался язык C++, когда Бьёрн Страуструп начал его разработку в 1979 году?
Anonymous Quiz
10%
C with Objects
2%
New C
78%
C with Classes
8%
Object C
2%
Enhanced C
😁6🤔1
🧩 Задача на выходные: загадка EOF

std::ifstream file("data.txt");
std::string line;

while (!file.eof()) {
std::getline(file, line);
std::cout << line << std::endl;
}


Задача: В чём подвох с проверкой eof()? Как правильно организовать цикл чтения?

📍Навигация: ВакансииЗадачиСобесы

Библиотека C/C++ разработчика

#междусобойчик