QQueue Class
template <typename T> class QQueueQQueue 클래스는 큐 기능을 제공하는 제네릭 컨테이너입니다. 더 보기...
| 헤더: | #include <QQueue> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
| 상속: | QList |
- 상속된 멤버를 포함한 모든 멤버 목록
- QQueue는 '암시적 공유 클래스 ' 및 '컨테이너 클래스'에 속합니다.
참고: 이 클래스의 모든 함수는 재진입 가능합니다.
공개 함수
| T | dequeue() |
| void | enqueue(T &&t) |
| void | enqueue(const T &t) |
| T & | head() |
| const T & | head() const |
| void | swap(QQueue<T> &other) |
상세 설명
QQueue<T>는 Qt의 제네릭 컨테이너 클래스 중 하나로, 여기서 T 는 요소 유형을 지정합니다. 이 클래스는 동일한 유형의 항목에 대한 큐 데이터 구조를 구현합니다.
큐는 선입선출(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 의 모든 기능은 QQueue에도 적용됩니다. 예를 들어, isEmpty()를 사용하여 큐가 비어 있는지 확인할 수 있으며, QList 의 반복자 클래스(예: QListIterator)를 사용하여 QQueue를 순회할 수 있습니다. 하지만 그 외에도 QQueue는 FIFO(선입선출) 세미언틱을 쉽게 구현할 수 있도록 세 가지 편의 함수인 enqueue(), dequeue(), head()를 제공합니다.
QQueue의 값 유형은 할당 가능한 데이터 유형이어야 합니다. 이는 일반적으로 사용되는 대부분의 데이터 유형을 포함하지만, 예를 들어 QWidget 를 값으로 저장하는 것은 컴파일러에서 허용하지 않습니다. 대신 QWidget*를 사용하십시오.
멤버 함수 문서
T QQueue::dequeue()
큐의 맨 앞 항목을 제거하고 반환합니다. 이 함수는 큐가 비어 있지 않다고 가정합니다.
이는 QList::takeFirst()와 동일합니다.
head(), enqueue(), isEmpty()도 참조하십시오 .
큐의 끝부분에 값 t 을 추가합니다.
이는 QList::append()과 동일합니다.
T &QQueue::head()
큐의 맨 앞 항목에 대한 참조를 반환합니다. 이 함수는 큐가 비어 있지 않다고 가정합니다.
이는 QList::first()와 동일합니다.
dequeue(), enqueue() 및 isEmpty()도 참조하십시오 .
const T &QQueue::head() const
이것은 오버로드된 함수입니다.
[noexcept] void QQueue::swap(QQueue<T> &other)
이 큐를 ` other`와 순서를 바꿉니다. 이 작업은 매우 빠르며 절대 실패하지 않습니다.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.