Q3StrList Class

The Q3StrList class provides a doubly-linked list of char*. 更多...

头: #include <Q3StrList>
继承: Q3PtrList<char>
继承者: Q3StrIList

公共函数

Q3StrList (bool deepCopies = true)
Q3StrList (const Q3StrList & list )
Q3StrList (const QList<QByteArray> & list )
~Q3StrList ()
operator QList<QByteArray> () const
Q3StrList & operator= (const Q3StrList & list )
Q3StrList & operator= (const QList<QByteArray> & list )

额外继承成员

详细描述

The Q3StrList class provides a doubly-linked list of char*.

If you want a string list of QString s use QStringList .

This class is a Q3PtrList <char> instance (a list of char*).

Q3StrList can make deep or shallow copies of the strings that are inserted.

A deep copy means that memory is allocated for the string and then the string data is copied into that memory. A shallow copy is just a copy of the pointer value and not of the string data itself.

The disadvantage of shallow copies is that because a pointer can be deleted only once, the program must put all strings in a central place and know when it is safe to delete them (i.e. when the strings are no longer referenced by other parts of the program). This can make the program more complex. The advantage of shallow copies is that they consume far less memory than deep copies. It is also much faster to copy a pointer (typically 4 or 8 bytes) than to copy string data.

A Q3StrList that operates on deep copies will, by default, turn on auto-deletion (see setAutoDelete ()). Thus, by default Q3StrList will deallocate any string copies it allocates.

虚拟 compareItems () function is reimplemented and does a case-sensitive string comparison. The inSort () function will insert strings in sorted order. In general it is fastest to insert the strings as they come and sort () at the end; inSort () is useful when you just have to add a few extra strings to an already sorted list.

The Q3StrListIterator class is an iterator for Q3StrList .

成员函数文档编制

Q3StrList:: Q3StrList ( bool deepCopies = true)

Constructs an empty list of strings. Will make deep copies of all inserted strings if deepCopies is TRUE, or use shallow copies if deepCopies is FALSE.

Q3StrList:: Q3StrList (const Q3StrList & list )

构造副本为 list .

Q3StrList:: Q3StrList (const QList < QByteArray > & list )

构造副本为 list .

Q3StrList:: ~Q3StrList ()

Destroys the list. All strings are removed.

Q3StrList:: operator QList<QByteArray> () const

Automatically converts a Q3StrList QList < QByteArray >.

Q3StrList & Q3StrList:: operator= (const Q3StrList & list )

赋值 list to this list and returns a reference to this list.

Q3StrList & Q3StrList:: operator= (const QList < QByteArray > & list )

赋值 list to this list and returns a reference to this list.