От RAII к счёту ссылок или RAII v2 с shared_ptr

Классический объект шаблона проектирования RAII нельзя передавать в функции, копировать, т.к. сработает несколько раз деструктор и ресурс будет несколько раз освобождён. В случае освобождения памяти — получаем исключение системы. Освобождение памяти опасней, чем выделение. Все проблемы можно решить, если использовать shared_ptr.
Читать далее