Преимущество ссылочной ссылки на подсчет ссылок заключается в том, что бывший не использует дополнительный бесплатный магазин, что делает его более надежным: Создание интеллектуального указателя с привязкой к ссылке не может не получиться. Недостатком является то, что для ссылочного связывания требуется больше памяти для его бухгалтерского учета (три указателя против одного указателя плюс одно целое). Кроме того, подсчет ссылок должен быть немного более быстрым - при копировании умных указателей требуется только косвенность и приращение. Список Менеджмент несколько более сложный. В заключение вы должны использовать ссылку , ссылаясь только на то, что свободного магазина недостаточно. В противном случае предпочитают подсчет ссылок.Преимущество ссылочной ссылки на подсчет ссылок при реализации интеллектуального указателя?
Это цитата из Modern C++ Design: Generic Programming and Design Pattern Applied. Я не понимаю, почему ссылки на основе ссылок на смарт-указатель не используют дополнительный бесплатный магазин, а затем становятся более надежными, т. Е. Никогда не терпят неудачу? Может ли кто-нибудь дать немного объяснений по этому поводу? Благодаря!
Не обманывать это, но все равно стоит прочитать: http://stackoverflow.com/questions/14291744/why-doesnt-stdshared-ptr-use-reference-linking – user4581301
В приведенной вами ссылке говорится: « контрольный блок в куче, который содержит контрольный счетчик "также подтверждает ответ @ legendends2k". – Peng
Да, но обратите внимание на предупреждение Джонатана Вакели о том, как трудно защитить ссылку, связанную с умным указателем, в многопоточной среде. * создание * ссылка любимый указатель безопаснее, но * безопасно * безопасно это другое дело. – user4581301