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

Вопросы собесов t.iss.one/+BTbqlW1VbIFmYmVi
Задачи t.iss.one/+9WeVk7cGswkzNTIy
Вакансии t.iss.one/+za2mJYs4riAzMzFi
Download Telegram
🤔 Что известно про вызовы throw exception в конструкторах и деструкторах?

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


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

Контейнеры set и map называют ассоциативными контейнерами, так как их элементы организованы в виде пары ключ-значение (в случае map) или в виде уникальных ключей (set). Они поддерживают автоматическую сортировку и быстрый доступ к элементам.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Какой из следующих операторов перегрузки должен быть обязательно реализован как метод класса?
Anonymous Quiz
5%
+
20%
<<
40%
[]
35%
==
🤔 В unordered_set поиск — константа?

Поиск в unordered_set имеет среднюю сложность O(1), но в худшем случае при хеш-коллизиях может быть O(n).

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Как удалить элемент из начала vector, если порядок не важен?

Вместо сдвига всех элементов (O(n)), можно:
1. Переместить последний элемент на место первого (O(1)).
2. Удалить последний элемент (pop_back()).
Это нарушит порядок, но значительно ускорит удаление.


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

1. Конструкторы не возвращают значения, поэтому исключения — единственный способ сообщить о неудачной инициализации.
2. Исключения интегрируются с механизмами управления памятью, автоматически освобождая частично инициализированные ресурсы.
3. Они делают код более выразительным, отделяя логику инициализации от обработки ошибок.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
👍2
🤔 Альтернативное решение для хранения float цены в качестве ключа?

Вместо хранения float можно:
1.Преобразовать цену в целочисленное значение (например, умножить на 100 или 1000 для точности до копеек/центов).
2.Хранить результат как int, что обеспечит точное сравнение и отсутствие ошибок округления.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔 Когда выбросили исключение из конструктора, о чем стоит помнить?

Если исключение выброшено из конструктора, деструктор объекта вызван не будет. Это требует ручного освобождения ресурсов, выделенных до момента выброса исключения.

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