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
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.