Такую возможность называют ADL (Argument-Dependent Lookup) или Koenig Lookup. Компилятор автоматически ищет функцию в пространстве имен аргумента, если оно не указано явно.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Anonymous Quiz
2%
Возвращается последний элемент массива
15%
Происходит ошибка компиляции
17%
Возвращается случайное значение
65%
Поведение не определено
👍1
Anonymous Quiz
55%
std::future позволяет нескольким потокам одновременно получать результат из одной задачи
6%
std::future может быть использован для получения результата из асинхронной задачи
30%
std::future требует использования метода get() для получения результата
9%
std::future поддерживает получение исключений, произошедших в асинхронной задаче
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
Anonymous Quiz
8%
std::deque может быть использован для реализации стеков и очередей
42%
std::deque предоставляет доступ к элементам по индексу
8%
std::deque поддерживает эффективное добавление и удаление элементов с обоих концов
42%
std::deque использует внутреннее хранилище в виде непрерывного блока памяти
Anonymous Quiz
78%
std::unique_ptr можно копировать для передачи владения
10%
std::unique_ptr поддерживает пользовательские делетеры
4%
std::unique_ptr автоматически освобождает объект при разрушении
8%
std::unique_ptr управляет уникальным владением объекта через указатель
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
Anonymous Quiz
9%
std::function поддерживает хранение и вызов лямбда-выражений
35%
std::function может быть использован для хранения состояния
20%
std::function позволяет оборачивать функции-члены классов
37%
std::function требует явного указания типа функции при создании
👍1🤔1
Anonymous Quiz
7%
std::move выполняет преобразование объекта в rvalue ссылку
37%
std::move изменяет состояние объекта, к которому применяется
51%
std::move может использоваться для перемещения только указателей
5%
std::move позволяет передать владение ресурсами без копирования
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
💊1
Anonymous Quiz
12%
std::thread::native_handle возвращает низкоуровневый дескриптор потока
29%
std::thread::native_handle является частью стандарта C++
26%
std::thread::native_handle можно использовать для взаимодействия с системными API
32%
std::thread::native_handle возвращает объект, специфичный для реализации
👍1
Anonymous Quiz
42%
Coroutines всегда требуют использования ключевых слов co_await, co_yield и co_return
19%
Coroutines позволяют приостанавливать выполнение функции и возобновлять его позже
8%
Coroutines могут использоваться для асинхронного программирования
31%
Coroutines являются частью C++20
Если у базового класса есть хотя бы одна виртуальная функция, то у него создается одна таблица виртуальных функций (vtable). У производного класса также создается своя vtable, если он переопределяет виртуальные методы или добавляет новые.
- Если производный класс не добавляет новых виртуальных функций, он использует vtable родительского класса.
- Если переопределяет методы, создается отдельная vtable для производного класса.
Таким образом, в общем случае будет две таблицы vtable – по одной для каждого класса.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
9%
Команда POP изменяет указатель стека (ESP/RSP)
21%
Команда POP используется для восстановления значения регистра после вызова функции
24%
Команда POP извлекает значение из стека и помещает его в указанный регистр
47%
Команда POP изменяет флаги процессора в зависимости от результата операции
💊1
Anonymous Quiz
15%
std::scoped_lock не требует явного вызова методов для блокировки и разблокировки
27%
std::scoped_lock автоматически блокирует и разблокирует мьютексы
19%
std::scoped_lock может быть использован для управления блокировкой потоков
38%
std::scoped_lock обеспечивает безопасную блокировку нескольких мьютексов одновременно
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
Anonymous Quiz
5%
std::optional может содержать любое значение, включая std::nullopt
10%
std::optional является частью библиотеки
24%
std::optional используется для оборачивания значений, которые могут отсутствовать
62%
std::optional не поддерживает операторы сравнения
Anonymous Quiz
13%
std::unique_lock может быть использован для реализации ожидания и таймаутов
17%
std::unique_lock автоматически разблокирует мьютекс при выходе из области видимости
21%
std::unique_lock предоставляет более гибкие механизмы блокировки по сравнению с std::lock_guard
50%
std::unique_lock поддерживает блокировку нескольких мьютексов одновременно
🔥1💊1
2. Исключения позволяют безопасно остановить создание объекта, если данные или ресурсы не были успешно инициализированы.
3. Это защищает от использования некорректно инициализированных объектов.
Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
Anonymous Quiz
21%
std::visit автоматически выбирает тип функции для обработки значения в std::variant
54%
std::visit требует, чтобы все типы в std::variant были обработаны
14%
std::visit позволяет выполнять операции на активном типе в std::variant
11%
std::visit поддерживает использование лямбда-выражений для обработки значений
Anonymous Quiz
22%
std::chrono::steady_clock используется для отслеживания времени выполнения программы
30%
std::chrono::steady_clock может быть не поддержан на некоторых платформах
22%
std::chrono::steady_clock может использоваться для измерения реального времени
26%
std::chrono::steady_clock может быть использован для синхронизации времени между потоками
💊1