Вопрос про деструктор и delete() |
Здравствуйте, гость ( Вход | Регистрация )
Вопрос про деструктор и delete() |
registr |
9.8.2011, 13:50
Сообщение
#1
|
Участник Группа: Участник Сообщений: 115 Регистрация: 16.11.2009 Пользователь №: 1234 Спасибо сказали: 8 раз(а) Репутация: 1 |
Смотрю демо QtOpenGL. В классе виджета часто определяется деструтор. Обычно в нём удаляют дисплейные списки, текстурные объекты и т.д. Но сам деструктор явно нигде не вызывается. Вопрос, может он вызывается автоматически после закрытия приложения? И что будет, если я не определю деструктор, то как подчистится память от дисплейных списков и т.д. Если не ошибаюсь, речь идет о сборке мусора. Т.е. существует ли в Qt автоматическая сборка муроса без деструкторов? Если таковая сборка мусора есть, то зачем тогда нужен деструктор?
И второй вопрос. Если я создаю динамический виджет, то и удалять его должен через delete(), а не через деструктор виджета. Как delete() понимает, что еще занята память под дисплейные списки и т.д. и что ее нужно освободить? Буду признателен за хорошее разяснение этих вопросов)) |
|
|
Текстовая версия | Сейчас: 28.12.2024, 8:33 |