Ответ 1
Многие классы Qt выводятся из QObject, и хотя некоторые из встроенных классов интеллектуальных указателей связаны с QObject (или QSharedData), QSharedPointer и QScopedPointer позволяют показывать указатели на что-либо.
Кроме того, вы найдете умные шаблоны указателей в Boost:
- scoped_ptr - Простое владение отдельными объектами. Noncopyable.
- scoped_array - Простое владение массивами. Noncopyable.
- shared_ptr - Владение объектами делится между несколькими указателями.
- shared_array - Владение массивом разделяется между несколькими указателями.
- weak_ptr - Не владеющие наблюдателями объекта, принадлежащего shared_ptr.
- intrusive_ptr - Совместное владение объектами со встроенным числом ссылок.