std::make_unique — это функция шаблона, которая создает и возвращает std::unique_ptr, который управляет новым объектом типа T, созданным с помощью переданных аргументов.std::make_unique может быть полезен в задачах, где требуется управление динамически выделенной памятью с помощью std::unique_ptr. Она обеспечивает безопасность исключений и удобство использования по сравнению с явным использованием new и delete.В этом примере мы используем
std::make_unique для создания std::unique_ptr, который управляет новым объектом типа Foo. Мы передаем аргумент 5 в конструктор Foo, чтобы инициализировать поле x этим значением. Затем мы используем оператор -> для доступа к полю x и выводим его значение на экран.
