TGViewer
Senior C++ Developer Senior C++ Developer @seniorcpp · 11.6K subscribers
Post #2534 2.83K
std::make_shared

std::make_shared - это стандартная функция, используемая для создания объектов типа std::shared_ptr.
Она позволяет создавать объекты типа std::shared_ptr без использования оператора new. Это сокращает код и упрощает его читаемость.

В этом примере мы создаем класс MyClass, имеющий поле value и метод Print(), выводящий значение поля value на консоль. Затем мы используем std::make_shared для создания объекта типа std::shared_ptr:
std::make_shared<MyClass>(42);

*Обратите внимание, что таким способом созданный объект MyClass будет автоматически удален, когда на него не останется ссылок, даже если в вашем коде не указано delete.
More from @seniorcpp
  1. Oct 9, 2026init внутри if и switch Эта возможность C++17 мне полюбилась сразу же, как только я узнал…
  2. Oct 8, 2026Сортировка пузырьком Определите, сколько обменов сделает алгоритм пузырьковой сортировки п…
  3. Oct 6, 2026#вопросы_с_собеседований Что такое чисто виртуальный метод и абстрактный класс? Ответ: Чис…
  4. Oct 5, 2026#вопросы_с_собеседований В чем отличие vector от deque? Ответ: Здесь вспоминают о наличии…
  5. Oct 4, 2026Избавляемся от макросов В целом, разработчики стандарта стараются исключить препроцессор.…
  6. Oct 1, 2026malloc стал безопасен В предыдущих версиях использование низкоуровневых функций, унаследов…
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 →