Как устроены std::set и std::map в C++ на низком уровне?
В C++ std::set и std::map обычно реализуются с использованием сбалансированных бинарных деревьев поиска, чаще всего красно-черных деревьев.
Читать ответПодготовка к интервью
126 вопросов по C++ с технических собеседований
Что проверяют на интервью
На странице собраны вопросы по C++ — от проверки базовых принципов до практического применения и архитектурных решений. В подборке чаще встречаются темы: c++, security, information security.
Каталог
В C++ std::set и std::map обычно реализуются с использованием сбалансированных бинарных деревьев поиска, чаще всего красно-черных деревьев.
Читать ответstd::async в C++ предоставляет удобный способ запуска асинхронных задач и получения их результатов через std::future.
Читать ответОсновные проблемы:
Читать ответВ C++ ключевое слово typename используется в шаблонах для указания, что последующий идентификатор является именем типа, а не, например, значением или членом.
Читать ответautoptr — это устаревший умный указатель в C++, который автоматически освобождает управляемый объект при уничтожении autoptr.
Читать ответВ C++ строки могут быть представлены несколькими способами:
Читать ответДа, можно.
Читать ответВ C++ пришло на смену std::autoptr:
Читать ответПравило пяти (rule of five) требует явного определения пяти специальных функций-членов, если требуется контролировать копирование, перемещение или разрушение объекта:
Читать ответОсновные отличия между стандартным необорачиваемым указателем (raw pointer) и умным указателем std::uniqueptr в C++:
Читать ответДа, в своих проектах я использовал некоторые возможности стандарта C++17, которые упрощают код и повышают его безопасность и читаемость. Например:
Читать ответУникальный умный указатель (std::uniqueptr) лучше использовать, когда объект должен иметь единственного владельца, и владение не должно разделяться.
Читать ответ