Зачем нужны несколько указателей на один и тот же ресурс?
Данный вопрос возник, когда прочитал про std::shared_ptr
Объясните, пожалуйста(можно с примерами кода или "на пальцах"), где могут пригодиться несколько указателей на один и тот же ресурс и почему нельзя пихать один и тот же указатель всем "нуждающимся"
Ответы (1 шт):
Автор решения: kurasan
→ Ссылка
где могут пригодиться несколько указателей на один и тот же ресурс
Много где, любой разделяемый ресурс. Например, много указателей на какой-то синглтон.
почему нельзя пихать один и тот же указатель всем "нуждающимся"
std::shared_ptr так и делает: указатель один и тот же внутри. А отличается от простого указателя тем, что подсчитывает "нуждающихся" и автоматически очищает память, когда они заканчиваются.