en
Feedback
C/C++ | Тесты

C/C++ | Тесты

Open in Telegram
1 930
Subscribers
+224 hours
-47 days
-630 days
Posts Archive
🤔 Какое из следующих утверждений о std::shared_ptr неверно?
Anonymous voting

🤔 Когда нужно объявлять деструктор виртуальным? Деструктор должен быть виртуальным, если класс предназначен для использования в качестве базового, и предполагается полиморфное удаление через указатель (Base* ptr = new Derived; delete ptr;). Без виртуального деструктора деструкторы производных классов не будут вызваны, что приведет к утечке памяти. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о std::vector::data неверно?
Anonymous voting

🤔 В чем разница set и unordered_set? Set — это отсортированное множество, которое хранит элементы в порядке возрастания и использует бинарное дерево для внутренней реализации. Unordered_set хранит элементы в произвольном порядке и использует хеш-таблицу для доступа к элементам. В set операции поиска, вставки и удаления имеют сложность O(log n), а в unordered_set — O(1) в среднем случае, но O(n) в худшем случае. Set предпочтителен, когда требуется поддерживать порядок элементов. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о std::thread::detach неверно?
Anonymous voting

🤔 Как работает счетчик у shared_ptr? Счетчик ссылок в `std::shared_ptr` увеличивается каждый раз, когда новый `shared_ptr` создается с указателем на объект, и уменьшается, когда `shared_ptr` уничтожается или перестает указывать на объект. Когда счетчик достигает нуля, объект уничтожается. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о std::unique_ptr неверно?
Anonymous voting

🤔 Какие есть уровни exception гарантий? 1. No-throw Guarantee: метод или операция не выбрасывает исключений. Пример: деструкторы. 2. Strong Guarantee: при выбросе исключения состояние объекта или программы остаётся неизменным. 3. Basic Guarantee: состояние объекта остаётся корректным, но изменения могут быть частичными. 4. No Guarantee: программа может оказаться в некорректном состоянии при исключении. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о концепциях (concepts) неверно?
Anonymous voting

🤔 Что можешь рассказать о little-endian и big-endian? Little-endian и big-endian — это порядки байтов в мультибайтовых данных, используемые в компьютерной архитектуре для хранения данных. В little-endian младший байт сохраняется по низкому адресу, а старший байт по высокому. В big-endian старший байт сохраняется по низкому адресу, а младший по высокому. Выбор порядка байтов влияет на совместимость и производительность системы в различных сценариях использования. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о std::atomic неверно?
Anonymous voting

🤔 Что будет если в функции помеченной как noexcept бросить исключение? Если функция, помеченная как `noexcept`, выбросит исключение, программа вызовет `std::terminate()`, что приведёт к немедленному завершению выполнения. Это связано с тем, что `noexcept` гарантирует, что функция не выбросит исключений, и нарушение этого обещания считается критической ошибкой. Использование `noexcept` позволяет оптимизировать код, так как компилятор может делать определённые оптимизации, полагаясь на то, что исключения не будут выбрасываться. Следует избегать выбрасывания исключений в таких функциях. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о std::is_same неверно?
Anonymous voting

🤔 Как проверить, вылетело ли исключение в каком-то из потоков? Исключения из потоков можно сохранить в std::exception_ptr через std::current_exception() и передать их в главный поток для обработки. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о компиляции и линковке в C++ неверно?
Anonymous voting

🤔 Какое из следующих утверждений о static_assert неверно?
Anonymous voting

🤔 Почему по идее в конструкторе нужны исключения? 1. Конструктор отвечает за корректную инициализацию объекта, поэтому при ошибке важно сигнализировать о проблеме. 2. Исключения позволяют безопасно остановить создание объекта, если данные или ресурсы не были успешно инициализированы. 3. Это защищает от использования некорректно инициализированных объектов. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о std::insert_iterator неверно?
Anonymous voting

🤔 Что известно о ключевом слове override? Ключевое слово override используется для явного указания, что метод переопределяет виртуальный метод базового класса. Оно предотвращает ошибки, связанные с неправильным именованием или сигнатурой методов. Ставь 👍 если знал ответ, 🔥 если нет Забирай 📚Базу Знаний

🤔 Какое из следующих утверждений о std::thread неверно?
Anonymous voting