W>>>Врядли. У умного указателя наверняка имеются кастомные конструкторы и операторы присваивания.
AG>>Конструкторы, кроме копирования — зафорвардить вручную, оператор = сам сгенерится.
AG>>Конечно, для смартпоинтера это плохой вариант, но луше не знаю
Спасибо за ответы.
Как временное решение я так и сделал: создал класс-наследник и прописал в нём все конструкторы (их у меня пока два). Но чем больше приходится писать, тем больше ошибок можно посадить. И поддерживать сложнее, если понадобится добавить новый конструктор.
Понравилось решение от Were и byleas с объявлением типа в новом шаблоне. Сегодня поменяю код
E>только как-то не понятно на кой это всё надо? Может быть каким-то уже готовым смартпоинтером стоит попользоваться? Там много прикольного уже люди напридумывали, вообще-то...
Можете что-то посоветовать, что уже сами опробовали и понравилось?
Мой смартпоинтер умеет не только освобождать память, но и закрывать handle различных типов (мой проект активно использует Win32 API).