Anonymous Quiz
19%
std::atomic поддерживает атомарные операции над примитивными типами данных
23%
std::atomic::fetch_add всегда выполняет атомарное добавление значения
32%
std::atomic::compare_exchange_strong требует, чтобы оба значения были равны для замены
26%
std::atomic::exchange позволяет заменить значение и вернуть старое значение
👍2
Anonymous Quiz
9%
std::tuple позволяет хранить элементы различных типов в одном объекте
30%
std::tuple поддерживает получение элементов по их индексу
6%
std::tuple является частью библиотеки
56%
std::tuple позволяет изменять типы элементов во время выполнения
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊3
Anonymous Quiz
46%
std::unique_lock не требует явного захвата мьютекса
26%
std::unique_lock может быть использован с std::condition_variable
14%
std::unique_lock поддерживает блокировку и разблокировку мьютекса
14%
std::unique_lock обеспечивает автоматическое освобождение мьютекса
Anonymous Quiz
8%
convert
10%
cast
2%
change
80%
static_cast<>
2. std::recursive_mutex: позволяет одному потоку многократно блокировать мьютекс.
3. std::timed_mutex: поддерживает блокировку с тайм-аутом.
4. std::shared_mutex: позволяет совместный доступ для чтения и эксклюзивный доступ для записи.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
13%
std::scoped_lock предоставляет средство для безопасного захвата нескольких мьютексов
13%
std::scoped_lock является частью библиотеки
59%
std::scoped_lock поддерживает рекурсивное захватывание мьютексов
15%
std::scoped_lock использует RAII для автоматического освобождения мьютексов
🔥1
Anonymous Quiz
27%
std::enable_if используется для частичной специализации шаблонов
16%
std::enable_if может использоваться для проверки выражений во время компиляции
43%
std::enable_if требует использования decltype для определения типа
14%
std::enable_if позволяет включать или исключать функции из перегрузки в зависимости от типа
Если у базового класса есть хотя бы одна виртуальная функция, то у него создается одна таблица виртуальных функций (vtable). У производного класса также создается своя vtable, если он переопределяет виртуальные методы или добавляет новые.
- Если производный класс не добавляет новых виртуальных функций, он использует vtable родительского класса.
- Если переопределяет методы, создается отдельная vtable для производного класса.
Таким образом, в общем случае будет две таблицы vtable – по одной для каждого класса.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
16%
[[nodiscard]] может быть использован для указания на важность возвращаемого значения
13%
[[nodiscard]] является частью C++17
16%
[[nodiscard]] помечает функцию, чтобы предотвратить игнорирование возвращаемого значения
55%
[[nodiscard]] может применяться к конструкторам и деструкторам
Anonymous Quiz
12%
wait используется для синхронизации с завершением дочернего процесса
19%
wait возвращает идентификатор завершенного дочернего процесса
38%
wait не возвращает код завершения дочернего процесса
31%
wait блокирует процесс до завершения дочернего процесса
👍1
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
10%
std::unique_ptr поддерживает перемещение и не поддерживает копирование
79%
std::unique_ptr может быть копирован для создания нового unique_ptr
2%
std::unique_ptr автоматически освобождает память при выходе из области видимости
10%
std::unique_ptr управляет единственным владельцем динамически выделенного объекта
Anonymous Quiz
40%
Шаблоны могут вызывать ошибки компиляции только при инициализации объектов
35%
Для использования шаблонов необходимо явно указать типы при создании объекта шаблона
15%
Шаблоны могут быть частично специализируемыми
10%
Концепции в C++20 позволяют ограничивать типы, которые могут быть использованы с шаблонами
🔥1💊1
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Anonymous Quiz
13%
std::chrono предоставляет типы для работы с временем и продолжительностью
31%
std::chrono включает типы для работы с часовыми зонами
46%
std::chrono может использоваться только с встроенными типами данных времени
10%
std::chrono поддерживает конвертацию между различными единицами времени
Anonymous Quiz
19%
SetUp выполняется перед каждым тестом и используется для подготовки данных
19%
SetUp и TearDown могут быть переопределены в производных классах для настройки тестов
38%
Методы SetUp и TearDown могут быть объявлены как статические
23%
TearDown выполняется после каждого теста и используется для очистки ресурсов
👍1
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Anonymous Quiz
8%
Метапрограммирование позволяет выполнять вычисления на этапе компиляции
15%
Метапрограммирование может быть использовано для создания типов и функций на этапе компиляции
71%
Метапрограммирование требует использования только встроенных типов данных
6%
Метапрограммирование может использовать шаблоны для генерации кода
Anonymous Quiz
41%
std::transform_reduce всегда требует явного указания оператора преобразования
26%
std::transform_reduce является частью библиотеки
11%
std::transform_reduce поддерживает параллельное выполнение
22%
std::transform_reduce выполняет комбинацию операций преобразования и редукции