Название: А кто будет Освобождать Память ? (ItemModel / Item) Отправлено: 0x0001 от Май 05, 2010, 15:19 код из Qt Assistant:
Код: QStandardItemModel model(4, 4); Название: Re: А кто будет Освобождать Память ? (ItemModel / Item) Отправлено: BRE от Май 05, 2010, 15:21 а КТО будет Освобождать Память этих Итемов (см. new QStandardItem) после Разрушении Объекта model ??? Он и будет, т.е. объект model.Название: Re: А кто будет Освобождать Память ? (ItemModel / Item) Отправлено: 0x0001 от Май 05, 2010, 15:22 а КТО будет Освобождать Память этих Итемов (см. new QStandardItem) после Разрушении Объекта model ??? Он и будет, т.е. объект model.Точно проверено ли ? Название: Re: А кто будет Освобождать Память ? (ItemModel / Item) Отправлено: alexman от Май 05, 2010, 15:23 QStandardItemModel::~QStandardItemModel ()
Destructs the model. The model destroys all its items. Название: Re: А кто будет Освобождать Память ? (ItemModel / Item) Отправлено: 0x0001 от Май 05, 2010, 15:24 QStandardItemModel::~QStandardItemModel () ОК, поверю.. не буду проверять.....Destructs the model. The model destroys all its items. Спасибо! Название: Re: А кто будет Освобождать Память ? (ItemModel / Item) Отправлено: NicK от Май 07, 2010, 19:07 а что произойдет со всеми элементами модели, если вызвать model->clear()
Справка гласит: Цитировать void QStandardItemModel::clear () освободится ли память, занимаемая элементами модели после ее очистки или перед очисткой надо вручную удалять все ее элементы?Removes all items (including header items) from the model and sets the number of rows and columns to zero. Название: Re: А кто будет Освобождать Память ? (ItemModel / Item) Отправлено: kibsoft от Май 07, 2010, 19:18 Цитировать Call clear() to remove all items from the model. Т.е. они сами удаляются.Цитировать void QStandardItemModel::setItem ( int row, int column, QStandardItem * item ) Sets the item for the given row and column to item. The model takes ownership of the item. If necessary, the row count and column count are increased to fit the item. The previous item at the given location (if there was one) is deleted. |