The QQueue class is a generic container that provides a queue. 更多...
头: | #include <QQueue> |
qmake: | QT += core |
继承: | QList |
注意: 此类的所有函数 可重入 .
T | dequeue () |
void | enqueue (const T & t ) |
T & | head () |
const T & | head () const |
void | swap (QQueue<T> & other ) |
The QQueue class is a generic container that provides a queue.
QQueue <T> is one of Qt's generic 容器类 。它实现用于相同类型项的队列数据结构。
队列为 FIFO (先进先出) 结构。将项添加到队列末尾使用 enqueue () 和从头检索使用 dequeue ()。 head () 函数提供 (不移除) 头项的访问。
范例:
QQueue<int> queue; queue.enqueue(1); queue.enqueue(2); queue.enqueue(3); while (!queue.isEmpty()) cout << queue.dequeue() << endl;
范例将按 1、2、3 顺序输出。
QQueue 继承自 QList 。所有 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 使用 QList 的迭代器类 (例如: QListIterator ). But in addition, QQueue provides three convenience functions that make it easy to implement FIFO semantics: enqueue (), dequeue (),和 head ().
QQueue 's value type must be an 可赋值数据类型 . 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.
Removes the head item in the queue and returns it. This function assumes that the queue isn't empty.
这如同 QList::takeFirst ().
另请参阅 head (), enqueue (),和 isEmpty ().
添加值 t 到队列末尾。
这如同 QList::append ().
Returns a reference to the queue's head item. This function assumes that the queue isn't empty.
这如同 QList::first ().
另请参阅 dequeue (), enqueue (),和 isEmpty ().
这是重载函数。
交换队列 other with this queue. This operation is very fast and never fails.
该函数在 Qt 4.8 引入。