[Qt-interest] Memory Management in Qt

Ramesh ramesh.bs at robosoftin.com
Tue Oct 26 08:17:30 CEST 2010


Thanks Rohan,

What about the Qlistview and QStandardItemModel object?
Should I delete them in the destructor of widget? Or any other alternative is 
there for it also?


-----Original Message-----
From: Rohan McGovern [mailto:rohan.mcgovern at nokia.com]
Sent: Tuesday, October 26, 2010 11:45 AM
To: ext Ramesh
Cc: qt-interest at trolltech.com; QtS60-feedback at trolltech.com
Subject: Re: [Qt-interest] Memory Management in Qt

Ramesh said:
> HI all,
> I have small doubt about Qt memory management,
>
> Lets take an example of Listview, in listview we add each item by allocating 
> memory dynamically. So in this case do we need to delete all the "new"ed 
> items manually..
>
> Eg:
>
> Qlistview *list = new Qlistview;
> QStandardItemModel  *mModel = new QStandardItemModel();
> list ->setModel(mModel);
>
> for(int I =0;i<10;i++)
> {
> QsandardItem *item = new QsandardItem("Hi");
> mModel->appendRow(item);
> }
>
> In this example, item should be deleted manually?

No - the model takes ownership of the item, it'll be deleted when the
model is deleted.

There is an exception if you use the take* functions, though - these
will cause the model to release ownership of items.
-- 
Rohan McGovern
QA Engineer
Qt Development Frameworks, Nokia


-----------------------------------------------
Robosoft Technologies - Come home to Technology

Disclaimer: This email may contain confidential material. If you were not an intended recipient, please notify the sender and delete all copies. Emails to and from our network may be logged and monitored. This email and its attachments are scanned for virus by our scanners and are believed to be safe. However, no warranty is given that this email is free of malicious content or virus.



More information about the Qt-interest-old mailing list