Здравствуйте, гость ( Вход | Регистрация )
registr | Дата 9.8.2011, 16:42 |
Всем спасибо, вроде уже разобрал, что к чему. | |
Iron Bug | Дата 9.8.2011, 16:37 |
Самое лучшее разъяснение этих вопросов - книжка Бьёрна Страуструпа "Язык программирования C++". Читать основы С++ до полного просветления, иначе объяснять просто бесполезно. | |
Litkevich Yuriy | Дата 9.8.2011, 16:27 |
Но сам деструктор явно нигде не вызывается деструктор явно никогда не вызывается, развечто при записи:delete someObject; |
|
registr | Дата 9.8.2011, 13:50 |
Смотрю демо QtOpenGL. В классе виджета часто определяется деструтор. Обычно в нём удаляют дисплейные списки, текстурные объекты и т.д. Но сам деструктор явно нигде не вызывается. Вопрос, может он вызывается автоматически после закрытия приложения? И что будет, если я не определю деструктор, то как подчистится память от дисплейных списков и т.д. Если не ошибаюсь, речь идет о сборке мусора. Т.е. существует ли в Qt автоматическая сборка муроса без деструкторов? Если таковая сборка мусора есть, то зачем тогда нужен деструктор? И второй вопрос. Если я создаю динамический виджет, то и удалять его должен через delete(), а не через деструктор виджета. Как delete() понимает, что еще занята память под дисплейные списки и т.д. и что ее нужно освободить? Буду признателен за хорошее разяснение этих вопросов)) |
|
Просмотр темы полностью (откроется в новом окне) | |
Текстовая версия | Сейчас: 6.5.2024, 14:12 |