Форум вопросов и ответов

Форум вопросов и ответов (https://www.otvetnemail.ru/)
-   Новые вопросы и ответы 4 (https://www.otvetnemail.ru/novye-voprosy-i-otvety-4-823/)
-   -   Неявное удаление объкта (https://www.otvetnemail.ru/novye-voprosy-i-otvety-4-823/neyavnoe-udalenie-ob-kta-262373/)

Guest 28.09.2011 21:23

Неявное удаление объкта
 
ЦитироватьQObjects organize themselves in object trees. When you create a QObject with another object as parent, the object will automatically add itself to the parent's children() list. The parent takes ownership of the object i.e. it will automatically delete its children in its destructor.Какой-то внутренний конфликт возникает при чтении этих строк. Есть у меня в классе набор указателей на "обычные" объекты и набор указателей на потомков QObject. Нужно заботится об удалении "обычных" в деструкторах, или же каждого использовать в контексте смарт-поинтера. С другой стороны, с указателями на QObject-ы получается обратная ситуация, нужно следить чтобы никто из них случайно не попал в деструктор и не удалился неположенным образом(оно может быть вреда и не будет, внутрях всеравно наверняка используются QPointer'ы, но зачем на лишние действия?). Не лучше ли было сделать нормальный QSmartPointer какой-нибудь и не городить огород с неявным удалением чайлдов?


Часовой пояс GMT, время: 22:19.


© www.otvetnemail.ru - Форум вопросов и ответов.