Вопросы к Поиску с Алисой

Примеры ответов Поиска с Алисой
Главная / Наука и образование / В чем преимущества использования std::make|_shared по сравнению с ручными shared|_ptr…
Вопрос для Поиска с Алисой
17 декабря

В чем преимущества использования std::make|_shared по сравнению с ручными shared|_ptr конструкторами?

Алиса
На основе источников, возможны неточности

Преимущества использования std::makeshared по сравнению с ручными конструкторами sharedptr:

  • Сокращённое количество отдельных выделений памяти. arne-mertz.de scrutator.me При использовании makeshared блок счётчика ссылок и данные можно расположить в памяти последовательно, в одном выделенном блоке памяти. scrutator.me Это достигается за счёт того, что создание объекта и выделение памяти под него изолируется от пользователя и происходит внутри функции makeshared. scrutator.me
  • Локализация кэша. arne-mertz.de При использовании make_shared структура счётчика и объект расположены рядом друг с другом. arne-mertz.de Действия, которые работают как со структурой счётчика, так и с самим объектом, будут иметь только половину количества пропусков кэша. arne-mertz.de
  • Безопасность исключений. arne-mertz.de stackoverflow.com Использование make_shared означает, что не нужно иметь дело с new и необработанными указателями, что обеспечивает лучшую безопасность исключений — нет возможности выбросить исключение после выделения объекта, но до назначения его умному указателю. stackoverflow.com

Пользователь

Время добавления
Текст комментария
Ответить
Показать X ответов

Пользователь

Время добавления
Текст ответа
Ответить

Комментарии

Войти
Войдите, чтобы комментировать

Ещё по теме

Каковы преимущества и недостатки использования зелёного паспорта для экспортно-импортных операций?
Почему в C++ появилась необходимость в функции std::make|_shared?
Каковы преимущества и недостатки горизонтального перевода для студентов?
Какие преимущества дает покупка недвижимости на стадии котлована?
Какие преимущества имеет использование низковольтных систем безопасности?
Примеры полезных ответов Поиска с Алисой на вопросы из разных сфер. Вопросы сгенерированы нейросетью YandexGPT для актуальных тем, которые определяются на базе обобщённых запросов к Поиску с Алисой.
Задать новый вопрос
Задайте вопрос...
…и сразу получите ответ в Поиске с Алисой
Войдите, чтобы поставить лайк
С Яндекс ID это займёт пару секунд
Войти
Вы уверены, что хотите удалить комментарий?
Удалить
Отменить