Russian Qt Forum

Qt => Общие вопросы => Тема начата: Jkc от Март 11, 2012, 13:11



Название: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: Jkc от Март 11, 2012, 13:11
Мне нужно динамически создавать объекты и запихивать их в  вектор, есть ли в Qt свой  аналог умных указателей shared_ptr  или auto_ptr ?


Название: Re: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: mutineer от Март 11, 2012, 13:16
Что мешает использовать именно shared_ptr ?

Но аналог есть - QSharedPointer


Название: Re: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: Jkc от Март 11, 2012, 13:31
Что мешает использовать именно shared_ptr ?

Но аналог есть - QSharedPointer

Нечего не мешает, просто если пишу на Qt то не охота все смешивать в одну кучу, особенно если есть кутешная реализация того что мне нужно, ну а если нет то придется,   спасибо за QSharedPointer сейчас почитаю


Название: Re: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: kambala от Март 11, 2012, 17:24
QPointer ещё - обнуляет указатель при удалении


Название: Re: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: twp от Март 12, 2012, 10:33
QPointer ещё - обнуляет указатель при удалении
QPointer работает только с QObject *. А аналог auto_ptr это QScopedPointer


Название: Re: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: Jkc от Март 12, 2012, 10:59
минутку,  я работаю  с классом наследованным от QObject, что мне лучше использовать?


Название: Re: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: Пантер от Март 12, 2012, 11:01
QPointer ещё - обнуляет указатель при удалении
QPointer работает только с QObject *. А аналог auto_ptr это QScopedPointer
Только с QObject и его наследниками.


Название: Re: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: Jkc от Март 12, 2012, 14:06
как я понял не особо углубляясь в детали
соответствие следующее
--
QSharedPointer - boost::shared_ptr
QWeakPointer - boost::weak_ptr
QScopedPointer - boost::scoped_ptr
--
спасибо всем кто помогал.


Название: Re: Есть ли аналог shared_ptr или auto_ptr в Qt
Отправлено: qt_user от Март 13, 2012, 01:02
auto_ptr - не стоит применять, он официально deprecated (с новым стандартом) замена ему std::unique_ptr
умные указатели официально стают частью С++