Qt 4.8
Public Functions | List of all members
QQueue< T > Class Template Reference

The QQueue class is a generic container that provides a queue. More...

#include <qcontainerfwd.h>

Inheritance diagram for QQueue< T >:
QList< T >

Public Functions

dequeue ()
 Removes the head item in the queue and returns it. More...
 
void enqueue (const T &t)
 Adds value t to the tail of the queue. More...
 
T & head ()
 Returns a reference to the queue's head item. More...
 
const T & head () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
 QQueue ()
 Constructs an empty queue. More...
 
void swap (QQueue< T > &other)
 Swaps queue other with this queue. More...
 
 ~QQueue ()
 Destroys the queue. More...
 
- Public Functions inherited from QList< T >
void append (const T &t)
 Inserts value at the end of the list. More...
 
void append (const QList< T > &t)
 Appends the items of the value list to this list. More...
 
const T & at (int i) const
 Returns the item at index position i in the list. More...
 
T & back ()
 This function is provided for STL compatibility. More...
 
const T & back () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
iterator begin ()
 Returns an STL-style iterator pointing to the first item in the list. More...
 
const_iterator begin () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
void clear ()
 Removes all items from the list. More...
 
const_iterator constBegin () const
 Returns a const STL-style iterator pointing to the first item in the list. More...
 
const_iterator constEnd () const
 Returns a const STL-style iterator pointing to the imaginary item after the last item in the list. More...
 
QBool contains (const T &t) const
 Returns true if the list contains an occurrence of value; otherwise returns false. More...
 
int count (const T &t) const
 Returns the number of occurrences of value in the list. More...
 
int count () const
 Returns the number of items in the list. More...
 
void detach ()
 
void detachShared ()
 This prevents needless mallocs, and makes QList more exception safe in case of cleanup work done in destructors on empty lists. More...
 
bool empty () const
 This function is provided for STL compatibility. More...
 
iterator end ()
 Returns an STL-style iterator pointing to the imaginary item after the last item in the list. More...
 
const_iterator end () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
bool endsWith (const T &t) const
 Returns true if this list is not empty and its last item is equal to value; otherwise returns false. More...
 
iterator erase (iterator pos)
 Removes the item associated with the iterator pos from the list, and returns an iterator to the next item in the list (which may be end()). More...
 
iterator erase (iterator first, iterator last)
 Removes all the items from begin up to (but not including) end. More...
 
T & first ()
 Returns a reference to the first item in the list. More...
 
const T & first () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
T & front ()
 This function is provided for STL compatibility. More...
 
const T & front () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
int indexOf (const T &t, int from=0) const
 Returns the index position of the first occurrence of value in the list, searching forward from index position from. More...
 
void insert (int i, const T &t)
 Inserts value at index position i in the list. More...
 
iterator insert (iterator before, const T &t)
 Inserts value in front of the item pointed to by the iterator before. More...
 
bool isDetached () const
 
bool isEmpty () const
 Returns true if the list contains no items; otherwise returns false. More...
 
bool isSharedWith (const QList< T > &other) const
 
T & last ()
 Returns a reference to the last item in the list. More...
 
const T & last () const
 This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts. More...
 
int lastIndexOf (const T &t, int from=-1) const
 Returns the index position of the last occurrence of value in the list, searching backward from index position from. More...
 
int length () const
 This function is identical to count(). More...
 
QList< T > mid (int pos, int length=-1) const
 Returns a list whose elements are copied from this list, starting at position pos. More...
 
void move (int from, int to)
 Moves the item at index position from to index position to. More...
 
bool operator!= (const QList< T > &l) const
 Returns true if other is not equal to this list; otherwise returns false. More...
 
QList< T > operator+ (const QList< T > &l) const
 Returns a list that contains all the items in this list followed by all the items in the other list. More...
 
QList< T > & operator+= (const QList< T > &l)
 Appends the items of the other list to this list and returns a reference to this list. More...
 
QList< T > & operator+= (const T &t)
 Appends value to the list. More...
 
QList< T > & operator<< (const QList< T > &l)
 Appends the items of the other list to this list and returns a reference to this list. More...
 
QList< T > & operator<< (const T &t)
 Appends value to the list. More...
 
QList< T > & operator= (const QList< T > &l)
 Assigns other to this list and returns a reference to this list. More...
 
bool operator== (const QList< T > &l) const
 Returns true if other is equal to this list; otherwise returns false. More...
 
const T & operator[] (int i) const
 Same as at(). More...
 
T & operator[] (int i)
 Returns the item at index position i as a modifiable reference. More...
 
void pop_back ()
 This function is provided for STL compatibility. More...
 
void pop_front ()
 This function is provided for STL compatibility. More...
 
void prepend (const T &t)
 Inserts value at the beginning of the list. More...
 
void push_back (const T &t)
 This function is provided for STL compatibility. More...
 
void push_front (const T &t)
 This function is provided for STL compatibility. More...
 
 QList ()
 Constructs an empty list. More...
 
 QList (const QList< T > &l)
 Constructs a copy of other. More...
 
int removeAll (const T &t)
 Removes all occurrences of value in the list and returns the number of entries removed. More...
 
void removeAt (int i)
 Removes the item at index position i. More...
 
void removeFirst ()
 Removes the first item in the list. More...
 
void removeLast ()
 Removes the last item in the list. More...
 
bool removeOne (const T &t)
 Removes the first occurrence of value in the list and returns true on success; otherwise returns false. More...
 
void replace (int i, const T &t)
 Replaces the item at index position i with value. More...
 
void reserve (int size)
 Reserve space for alloc elements. More...
 
void setSharable (bool sharable)
 
int size () const
 Returns the number of items in the list. More...
 
bool startsWith (const T &t) const
 Returns true if this list is not empty and its first item is equal to value; otherwise returns false. More...
 
void swap (QList< T > &other)
 Swaps list other with this list. More...
 
void swap (int i, int j)
 Exchange the item at index position i with the item at index position j. More...
 
takeAt (int i)
 Removes the item at index position i and returns it. More...
 
takeFirst ()
 Removes the first item in the list and returns it. More...
 
takeLast ()
 Removes the last item in the list and returns it. More...
 
QSet< T > toSet () const
 Returns a QSet object with the data contained in this QList. More...
 
std::list< T > toStdList () const
 Returns a std::list object with the data contained in this QList. More...
 
QVector< T > toVector () const
 Returns a QVector object with the data contained in this QList. More...
 
value (int i) const
 Returns the value at index position i in the list. More...
 
value (int i, const T &defaultValue) const
 If the index i is out of bounds, the function returns defaultValue. More...
 
 ~QList ()
 Destroys the list. More...
 

Additional Inherited Members

- Public Types inherited from QList< T >
typedef const value_typeconst_pointer
 Typedef for const T *. More...
 
typedef const value_typeconst_reference
 Typedef for const T &. More...
 
typedef const_iterator ConstIterator
 Qt-style synonym for QList::const_iterator. More...
 
typedef qptrdiff difference_type
 Typedef for ptrdiff_t. More...
 
typedef iterator Iterator
 Qt-style synonym for QList::iterator. More...
 
typedef value_typepointer
 Typedef for T *. More...
 
typedef value_typereference
 Typedef for T &. More...
 
typedef int size_type
 Typedef for int. More...
 
typedef T value_type
 Typedef for T. More...
 
- Static Public Functions inherited from QList< T >
static QList< T > fromSet (const QSet< T > &set)
 Returns a QList object with the data contained in set. More...
 
static QList< T > fromStdList (const std::list< T > &list)
 Returns a QList object with the data contained in list. More...
 
static QList< T > fromVector (const QVector< T > &vector)
 Returns a QList object with the data contained in vector. More...
 

Detailed Description

template<class T>
class QQueue< T >

The QQueue class is a generic container that provides a queue.

Note
This class or function is reentrant.

QQueue<T> is one of Qt's generic container classes. It implements a queue data structure for items of a same type.

A queue is a first in, first out (FIFO) structure. Items are added to the tail of the queue using enqueue() and retrieved from the head using dequeue(). The head() function provides access to the head item without removing it.

Example:

queue.enqueue(1);
queue.enqueue(2);
queue.enqueue(3);
while (!queue.isEmpty())
cout << queue.dequeue() << endl;

The example will output 1, 2, 3 in that order.

QQueue inherits from QList. All of QList's functionality also applies to QQueue. For example, you can use isEmpty() to test whether the queue is empty, and you can traverse a QQueue using QList's iterator classes (for example, QListIterator). But in addition, QQueue provides three convenience functions that make it easy to implement FIFO semantics: enqueue(), dequeue(), and head().

QQueue's value type must be an assignable data type. This covers most data types that are commonly used, but the compiler won't let you, for example, store a QWidget as a value. Use QWidget* instead.

See also
QList, QStack

Definition at line 61 of file qcontainerfwd.h.

Constructors and Destructors

◆ QQueue()

template<class T>
QQueue< T >::QQueue ( )
inline

Constructs an empty queue.

Definition at line 57 of file qqueue.h.

57 {}

◆ ~QQueue()

template<class T>
QQueue< T >::~QQueue ( )
inline

Destroys the queue.

References to the values in the queue, and all iterators over this queue, become invalid.

Definition at line 58 of file qqueue.h.

58 {}

Functions

◆ dequeue()

template<class T>
T QQueue< T >::dequeue ( )
inline

Removes the head item in the queue and returns it.

This function assumes that the queue isn't empty.

This is the same as QList::takeFirst().

See also
head(), enqueue(), isEmpty()

Definition at line 61 of file qqueue.h.

Referenced by QGraphicsAnchorLayoutPrivate::calculateVertexPositions(), QGraphicsAnchorLayoutPrivate::findPaths(), QNetworkReplyImplPrivate::handleNotifications(), QPatternist::XSLTTokenizer::nextToken(), QNetworkAccessCache::releaseEntry(), and QThreadPoolPrivate::tryStart().

61 { return QList<T>::takeFirst(); }
T takeFirst()
Removes the first item in the list and returns it.
Definition: qlist.h:489

◆ enqueue()

template<class T>
void QQueue< T >::enqueue ( const T &  t)
inline

◆ head() [1/2]

template<class T>
T & QQueue< T >::head ( )
inline

Returns a reference to the queue's head item.

This function assumes that the queue isn't empty.

This is the same as QList::first().

See also
dequeue(), enqueue(), isEmpty()

Definition at line 62 of file qqueue.h.

Referenced by QPatternist::XSLTTokenizer::nextToken().

62 { return QList<T>::first(); }
T & first()
Returns a reference to the first item in the list.
Definition: qlist.h:282

◆ head() [2/2]

template<class T>
const T & QQueue< T >::head ( ) const
inline

This is an overloaded member function, provided for convenience. It differs from the above function only in what argument(s) it accepts.

Definition at line 63 of file qqueue.h.

63 { return QList<T>::first(); }
T & first()
Returns a reference to the first item in the list.
Definition: qlist.h:282

◆ swap()

template<class T>
void QQueue< T >::swap ( QQueue< T > &  other)
inline

Swaps queue other with this queue.

Since
4.8

This operation is very fast and never fails.

Definition at line 59 of file qqueue.h.

59 { QList<T>::swap(other); } // prevent QList<->QQueue swaps
void swap(QList< T > &other)
Swaps list other with this list.
Definition: qlist.h:129

The documentation for this class was generated from the following files: