Какое количество потоков может одновременно удерживать shared_lock на один shared_mutex?
Anonymous Quiz
17%
1
2%
2
20%
Количество ядер процессора
52%
Неограниченное
9%
256
❤2😁1
Что такое "ABI stability" и почему она важна для библиотек?
Anonymous Quiz
10%
Стабильность API между версиями
85%
Бинарная совместимость интерфейсов между версиями
2%
Стабильность алгоритмов
1%
Защита от багов
1%
Это касается только ассемблера
Какая сложность у std::unordered_map::find() в худшем случае?
Anonymous Quiz
16%
O(1)
13%
O(log n)
57%
O(n)
11%
O(n log n)
2%
O(√n)
Что такое Two-Phase Lookup в C++ templates?
Anonymous Quiz
67%
Двухэтапная компиляция шаблонов: проверка синтаксиса, затем инстанцирование
3%
Поиск в двух namespace одновременно
6%
Техника оптимизации шаблонного кода
23%
Механизм разрешения имен: dependent и non-dependent names
1%
Способ множественного наследования
Какая основная проблема решается с помощью std::launder?
Anonymous Quiz
13%
Утечки памяти
8%
Race conditions
7%
Stack overflow
11%
Deadlocks
60%
Pointer provenance
Что означает "pointer provenance"?
Anonymous Quiz
3%
Размер указателя
77%
Происхождение и права доступа указателя
6%
Тип указателя
5%
Адрес указателя
7%
Константность указателя
Какие типы подходят для std::start_lifetime_as?
Anonymous Quiz
17%
Любые типы
31%
Только POD типы
31%
Только implicit-lifetime types
10%
Только классы с виртуальными функциями
11%
Только примитивные типы
При вызове std::vector::reserve() с размером меньше текущей ёмкости вектора, что произойдёт с итераторами?
Anonymous Quiz
25%
Все итераторы инвалидируются
10%
Итераторы остаются валидными, но указывают на новую память
30%
Все итераторы остаются валидными
18%
Только итераторы на конец инвалидируются
16%
Поведение не определено
Что гарантирует std::chrono::steady_clock в отличие от system_clock?
Anonymous Quiz
31%
Большую точность
24%
Привязку к UTC
7%
Меньшее потребление ресурсов
29%
Никогда не идёт назад
10%
Работу на всех платформах
😁3
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;
}📍Навигация: Вакансии • Задачи • Собесы
Библиотека C/C++ разработчика
Please open Telegram to view this post
VIEW IN TELEGRAM
Какой системный вызов в Linux позволяет реализовать zero-copy передачу данных между файловым дескриптором и сокетом?
Anonymous Quiz
39%
mmap()
29%
sendfile()
8%
splice()
19%
Как 2, так и 3
6%
copy_file_range()
🔥1
Что такое "memory-mapped file" и когда его использовать?
Anonymous Quiz
18%
Специальный файл, содержащий карту памяти процесса
4%
Специальный формат файла для структур данных
3%
Технология шифрования файлов на уровне системы
72%
Отображение файла в адресное пространство для работы
2%
Метод сжатия больших файлов перед записью
Какой уровень протокола нужно указать для установки опции TCP_NODELAY?
Anonymous Quiz
11%
SOL_SOCKET
15%
IPPROTO_IP
56%
IPPROTO_TCP
13%
SOL_TCP
6%
IPPROTO_UDP