Заблокирован
|
|
1 | |
Есть ли в Qt сборщик мусора?17.07.2013, 18:26. Показов 3937. Ответов 11
Метки нет (Все метки)
Видел много примеров, где особо не беспокоятся о delete, например в деструкторе, об объектах, созданных при помощи new... Может к Qt есть некий сборщик мусора типа C#-вского?
0
|
17.07.2013, 18:26 | |
Ответы с готовыми решениями:
11
сборщик мусора в qt Сборщик мусора Сборщик мусора Сборщик мусора |
Псевдослучайный
1946 / 1145 / 98
Регистрация: 13.09.2011
Сообщений: 3,215
|
|
17.07.2013, 18:53 | 2 |
Сборщика мусора нет, но есть иерархия QObject, которая позволяет неявно удалять вместе с объектом древо потомков.
0
|
148 / 139 / 18
Регистрация: 13.10.2012
Сообщений: 592
|
|
17.07.2013, 21:38 | 3 |
Фишка вот в чем: как сказали выше, у Qt есть иерархия объектов QObject, засчет чего при уничтожении материнского объекта удаляются все дочерние
0
|
Заблокирован
|
|
18.07.2013, 10:22 [ТС] | 6 |
Как бы там ни было, надеется на магию думаю не стоит и лучше самому всё чистить... А по поводу умных указателей, это те, которые в tr1 идут или какие? По - моему в Qt тоже что - то подобное было в QPointer
0
|
154 / 110 / 9
Регистрация: 12.06.2013
Сообщений: 168
|
|
18.07.2013, 11:26 | 8 |
Есть QSharedPointer, это аналог shared_ptr, а QPointer - это указатель, который автоматически обнуляется, когда объект удален. И еще - QSharedPointer (как и QPointer, и QWeakPointer) могут работать только с классами, унаследованными от QObject.
1
|
154 / 110 / 9
Регистрация: 12.06.2013
Сообщений: 168
|
|
20.07.2013, 21:36 | 10 |
Да, с QSharedPointer и QWeakPointer я погорячился, он может использоваться с любыми классами, так что мое уверждение верно только в отношении QPointer. Сорри.
0
|
21.07.2013, 09:25 | 11 |
Да, потому что QPointer слушает сигнал destroyed, к слову, единственный сигнал, который QObject отправляет всегда и при любых люстоятельствах.
QSharedPointer и QWeakPointer же использует обычный подсчет ссылок. И именно поэтому разработчики Qt советуют переходить с QPointer на QWeakPointer.
1
|
21.07.2013, 15:34 | 12 |
Не беспокоится видать по тому что объектами управляет "владелец" он их и удаляет.
0
|
21.07.2013, 15:34 | |
21.07.2013, 15:34 | |
Помогаю со студенческими работами здесь
12
Сборщик мусора сборщик мусора Сборщик мусора Сборщик мусора у VB6 Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |