The QQueue class is a generic container that provides a queue. 更多...
| 頭: | #include <QQueue> |
| 繼承: | QList<T> |
注意: 此類的所有函數 可重入 .
| QQueue () | |
| ~QQueue () | |
| 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.
Constructs an empty queue.
Destroys the queue. References to the values in the queue, and all iterators over this queue, become invalid.
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 引入。