TGViewer
Channel Public Channel
C/C++ | Тесты

C/C++ | Тесты

@easy_c_plus_tests

Сайт: https://easyoffer.ru/
Все каналы: t.me/+xGeAw6ckJ4liYzQy

Контакт для рекламы: @sendme_ads
Subscribers
1.9K
Photos
31
Videos
0
Links
736

Showing posts older than #2419 · Back to latest

Older Posts 20 shown
Post #2417 208
🤔 Принцип подстановки Барбары Лисков?

Принцип Лисков (LSP) утверждает, что объект базового класса должен быть заменим объектом производного класса без изменения поведения программы. Производный класс не должен нарушать инварианты и контракт базового класса.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Post #2415 230
🤔 Какой имеется побочный эффект при работе с кодом в хидере?

При работе с кодом в хидерах возможны проблемы, связанные с повторным включением файлов (multiple inclusion), что может вызвать ошибки компиляции. Это решается использованием включающих защит (#pragma once или #ifndef). Также код в хидере увеличивает время компиляции, так как включается в несколько исходных файлов.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
  • 👍 2
Post #2413 234
🤔 Как можно проверить, что нет double exception?

Используйте функцию std::uncaught_exceptions() (C++17) или std::uncaught_exception() (до C++17) для проверки активного исключения.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
  • 🔥 1
Post #2411 262
🤔 Знаешь правило 5ти и правило 0?

Правило пяти в C++ означает, что если класс определяет один (или более) из следующих специальных членов функций, то ему, скорее всего, необходимо определить и все пять: деструктор, конструктор копирования, оператор копирования, конструктор перемещения и оператор перемещения. Правило нуля говорит, что классы должны использовать существующие классы управления ресурсами, такие как smart pointers, которые обеспечивают автоматическое управление ресурсами, избегая необходимости явного определения этих функций.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
  • 🔥 2
  • 👍 1
Post #2408 230
🤔 Как работает счетчик ссылок в shared_ptr?

В shared_ptr хранится счётчик ссылок, который увеличивается при создании новой копии и уменьшается при уничтожении указателя. Когда счётчик достигает нуля, объект автоматически освобождается из памяти.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Post #2405 238
🤔 Double except привести примеры, когда может полететь повторное исключение?

Повторное исключение (double exception) в C++ может возникнуть, когда исключение генерируется внутри блока обработчика другого исключения. Например, если в конструкторе копирования объекта, который копируется для передачи в catch-блок, происходит исключение, это приведет к повторному исключению. Также повторное исключение может возникнуть, если в блоке catch происходит вызов функции, генерирующей исключение, в то время как первое исключение еще не обработано полностью.

Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Post #2403 235
🤔 Коллизия в хеш-таблицах

Коллизия в хеш-таблицах возникает, когда два разных ключа имеют одинаковое хэш-значение.
Методы разрешения коллизий:
1. Цепочки (chaining): элементы с одинаковым хэш-значением хранятся в связанном списке или другой структуре.
2. Открытая адресация (open addressing): ищется следующая доступная ячейка для хранения элемента.
Коллизии снижают производительность, поэтому важно выбирать хорошие хэш-функции.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Post #2401 221
🤔 Что лежит в основе работы unordered_set, unordered_map и set, map?

1. Set и Map: основаны на сбалансированных бинарных деревьях, обычно красно-чёрных. Они поддерживают упорядоченность данных.
2. Unordered_set и Unordered_map: основаны на хеш-таблицах, обеспечивающих быструю вставку, удаление и поиск.
3. Основной принцип различия — структура данных: деревья для упорядоченности, хеш-таблицы для скорости.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Post #2399 226
🤔 Что такое back_inserter, зачем он нужен?

Это адаптер итератора, который используется для вставки элементов в конец контейнера при помощи push_back(). Он упрощает работу с алгоритмами стандартной библиотеки (std::copy, std::generate, std::transform), позволяя динамически расширять контейнер.


Ставь 👍 если знал ответ, 🔥 если нет
Забирай 📚Базу Знаний
Older posts →
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →