TGViewer
С++ задачи и вопросы С++ задачи и вопросы @quizcpp · 554 subscribers
Post #1604 107
❓ Вопрос на собеседовании

Что такое умные указатели в C++ (std::unique_ptr, std::shared_ptr, std::weak_ptr), и чем они отличаются друг от друга?

Ответ ⬇️
Умные указатели в C++ автоматизируют управление памятью и помогают избежать утечек памяти. Они находятся в заголовке .

std::unique_ptr владеет ресурсом единолично. При уничтожении указателя ресурс освобождается.
std::shared_ptr позволяет нескольким указателям совместно владеть ресурсом. Ресурс освобождается, когда последний shared_ptr уничтожается.
std::weak_ptr предоставляет доступ к ресурсу, но не увеличивает счётчик ссылок. Используется для предотвращения циклических зависимостей.

Пример использования ⚙️
#include
#include

int main() {
// unique_ptr: единоличное владение
std::unique_ptr uptr = std::make_unique(10);
std::cout

@quizcpp
More from @quizcpp
  1. Sep 14, 2026⚙️ std::ofstream std::ofstream из заголовка используется для записи данных в файл. Это удо…
  2. Aug 17, 2026🤔 Как это работает? — Передача аргументов в C++ В C++ аргументы функции можно передавать…
  3. Jul 23, 2026⚙️ std::iota std::iota — алгоритм из библиотеки , который заполняет диапазон значениями, н…
  4. Jul 11, 2026⚙️ std::lcm std::lcm вычисляет наименьшее общее кратное (НОК) двух чисел. Это полезно для…
  5. Jul 9, 2026⚙️ std::gcd std::gcd вычисляет наибольший общий делитель (НОД) двух чисел. Это полезно для…
  6. Jun 17, 2026⚙️ std::clamp std::clamp ограничивает значение в пределах заданного диапазона. Это полезно…
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 →