QT and Symbian

QT v4.x Queue 사용

leo21c 2025. 6. 30. 09:29

Qt 4.x에서는 QQueue<T> 클래스를 사용해 선입선출(FIFO) 방식의 큐를 쉽게 구현할 수 있어요. 이 클래스는 QList를 기반으로 하며, 큐에 데이터를 추가하고 꺼내는 데 특화된 메서드를 제공합니다.

#include <QCoreApplication>
#include <QQueue>
#include <QDebug>

int main(int argc, char *argv[]) {
    QCoreApplication app(argc, argv);

    QQueue<int> queue;

    // 데이터 추가
    queue.enqueue(10);
    queue.enqueue(20);
    queue.enqueue(30);

    // 큐에서 데이터 꺼내기
    while (!queue.isEmpty()) {
        int value = queue.dequeue();
        qDebug() << "꺼낸 값:" << value;
    }

    return 0;
}

🧠 주요 메서드

  • enqueue(const T &value): 큐의 끝에 항목 추가
  • dequeue(): 큐의 앞에서 항목 제거 및 반환
  • head(): 큐의 앞 항목을 제거하지 않고 반환
  • isEmpty(): 큐가 비어 있는지 확인

💡 참고 사항

  • QQueue는 내부적으로 QList를 상속하므로, QList의 기능도 대부분 사용할 수 있어요.
  • QQueue<QWidget>처럼 복잡한 객체는 포인터(QWidget*)로 저장해야 해요.
LIST