Что рекомендуется использовать std::unique_ptr для конкретного использования, когда и как его лучше всего использовать?
Я обнаружил:
Я уже знаю:
-
std::unique_ptrбыл разработан в С++ 11 в качестве заменыstd::auto_ptr - Что a
std::unique_ptrне имеет счетчика ссылок и "владеет", он указывает на - Нет копии/назначения с
std::unique_ptr - Когда мне нужен уникальный указатель,
std::unique_ptr- это переход к структуре
Что я хотел бы знать:
- Использует
std::unique_ptrкогда-либо предпочтительный (кроме уникальности) что-то еще? Что я получу в этой ситуации? - Если да, то при каких обстоятельствах и когда?
- Учитывая потребность в семантике перемещения, сделает ли это
std::unique_ptrменее выгодным в целом? - Если a
std::shared_ptrбудет достаточным для управления динамической памятью почти в каждом ситуация, почему имеет в моем распоряжении вопросstd::unique_ptr(опять же, другое | чем единственность)?