LINUX.ORG.RU

Вопрос про QT?


0

0
Сейчас гляжу в QT Tutorial и не понимаю совсем в чем
тут дело например такая строчка
QGrid *grid = new QGrid( 4, this );
С ней то все в порядке, но во всей программе потом ни где не
вызывается
delete grid;
Так что ли надо программировать или это что-то
спицифичное для UNIX, что ничего не надо потом
удалять.
Объясните пожалуйста чайнику :-)
anonymous
Я не знаю, но могу навскидку предположить: в QT реализован свой сборщик мусора посредством переопределения new/delete.
JekLove
()
operator new не нашел, вот от таких советов и теряется память

Скорее всего так : grid-у передается адрес родителя, который прикрепляет его к себе (в исходниких можно уточнить как это делается) а как убиваешь главного родителя, то он убивает (вызывает delete) своих детей.

anonymous
()
Немного неверную выбрал терменалогию. "Родители и потомки" используются о объектном программировании. Но думаю и так понятно. (указатель на содержащий объект это (в данном у тебя случай 2-й параметр) this)

anonymous
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.