C/C++ | Тесты – Telegram
C/C++ | Тесты
1.95K subscribers
27 photos
491 links
Cайт easyoffer.ru
Реклама @easyoffer_adv
ВП @easyoffer_vp

Вопросы собесов t.me/+BTbqlW1VbIFmYmVi
Задачи t.me/+9WeVk7cGswkzNTIy
Вакансии t.me/+za2mJYs4riAzMzFi
Download Telegram
🤔 Что такое weak_ptr?

Это слабая ссылка на объект, управляемый shared_ptr.
1. Она не увеличивает счётчик ссылок объекта.
2. Используется для предотвращения циклических ссылок между shared_ptr.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
🤔 Что такое spinlock?

Spinlock — это механизм синхронизации, который постоянно проверяет доступность ресурса в цикле до тех пор, пока не получит доступ. В отличие от обычных блокировок (mutex), spinlock не переводит поток в состояние ожидания, а выполняет активное ожидание (spinning), что может быть более эффективно на многопроцессорных системах для коротких критических секций. Spinlock следует использовать с осторожностью, так как они могут привести к излишнему использованию процессора, если ресурс недоступен в течение длительного времени.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Что известно про концепцию input и output?

Концепции input и output определяют, как данные могут быть обработаны с помощью итераторов:
- Input-итераторы позволяют считывать данные из источника (например, файла или контейнера).
- Output-итераторы записывают данные в целевой объект.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой стандарт C++ впервые ввел концепцию rvalue-ссылок?
Anonymous Quiz
5%
C++98
13%
C++03
72%
C++11
10%
C++17
🤔 Какая сложность работы с кучей?

Работа с кучей (heap) в алгоритмах обычно имеет временную сложность O(log n) для операций вставки и удаления, т.к. элементы необходимо сравнивать и переставлять для поддержания свойств кучи.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Unordered_set, unordered_map и set, map чем отличаются?

1. Set/Map: элементы хранятся в отсортированном порядке, используются бинарные деревья (обычно красно-чёрные).
2. Unordered_set/Unordered_map: элементы не сортируются, используют хеш-таблицы для быстрого доступа.
3. Set и Map медленнее на вставке/поиске (O(log N)), но позволяют итерировать в отсортированном порядке.
4. Unordered_set и Unordered_map быстрее для поиска (O(1) в среднем), но не поддерживают упорядоченный доступ.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой метод в C++ позволяет одному классу наследовать методы и атрибуты двух или более классов?
Anonymous Quiz
5%
Одиночное наследование
74%
Множественное наследование
13%
Виртуальное наследование
7%
Абстрактное наследование
🤔 Зачем нужен виртуальный деструктор?

Виртуальный деструктор необходим, когда класс предполагает полиморфное использование, то есть когда объекты базового класса могут быть удалены через указатель на производный класс. Без виртуального деструктора вызов `delete` на указатель базового типа приведет к вызову только деструктора базового класса, что может вызвать утечку памяти для производных классов. Виртуальный деструктор гарантирует, что будет вызван правильный деструктор для производного класса, обеспечивая корректное освобождение всех ресурсов.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
🤔 Что известно про вызовы throw exception в конструкторах и деструкторах?

- В конструкторе: если выброшено исключение, объект считается несозданным, вызываются деструкторы уже созданных членов класса, после чего исключение передается дальше.
- В деструкторе: выбрасывать исключения небезопасно, так как это может вызвать std::terminate(), если исключение не обработано (throw в ~Destructor() недопустимо).
- Если необходимо обработать ошибку в деструкторе, лучше использовать логирование или явный вызов try-catch.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM