PDA

View Full Version : QList usage in place QPtrList



darpan
25th October 2006, 12:34
Hi,
I have to create a list of class including one structure variable and some other variables. In QT3 i am using QPtrList.
Now I am trying to use QList but fails.

I am using following code :
QList<TREEITEM>list; // list contains objects of TREEITEM Class.


TREEITEM class includes following code:

class TREEITEM
{

public:
DOSDIR MyTreeEntry; //DOSDIR is a Structure
QString bFileName;
QTreeWidgetItem *TreeWidgetItem;

TREEITEM(void *MyTreeEntry1,QString bFileName1) //this is constructor
{
memset(this,0x00,sizeof(*this));
DOSDIR *MyTreeEntry2=(DOSDIR*)MyTreeEntry1;
memcpy(&MyTreeEntry,MyTreeEntry2,sizeof(DOSDIR));
bFileName=bFileName1;
};

};


Following code is used to append items in list:
list.append(new TREEITEM((void*)(&DosDir),bFileName)); //This is showing error no matching function


In QT3 i am using QPtrList in the same way.

Please suggest ways how i can use QList, Please give me some code example so that i can solve my problem.


Thanks and Regards

Gopala Krishna
25th October 2006, 14:39
QList<TREEITEM>list; // list contains objects of TREEITEM Class.
Try QList<TREEITEM*>.
(remember QList needs to be explicitly told to hold pointers unlike QPtrList)

jacek
25th October 2006, 15:41
memset(this,0x00,sizeof(*this));
Never do that to a C++ class.