===== QQueue ===== La classe QQueue est un conteneur générique qui fournit des files. [[#Description détaillée|Plus d'informations...]] ==== Héritage ==== Hérite de [[qlist|QList]]. ==== Description détaillée ==== La classe QQueue est un conteneur générique qui fournit des files. ''QQueue'' est l'une des [[containers#container-classes|classes de conteneurs]] génériques de Qt. Elle implémente une structure de données de files pour les éléments d'un même type. Une file est une structure de type "premier entré premier sorti" (en anglais : First In First Out, FIFO). Les éléments sont ajoutés à la fin de la file en utilisant [[#enqueue()]] et retirés du début en utilisant [[#dequeue()]]. La fonction [[#head()]] fournit un accès à l'élément du début sans le supprimer. Exemple : QQueue file; file.enqueue(1); file.enqueue(2); file.enqueue(3); while(!file.isEmpty()) cout << file.dequeue() << endl; L'exemple suivant sortira 1, 2 puis 3, dans cet ordre. QQueue hérite de [[QList]]. Toutes les fonctionnalités de [[QList]] sont utilisables avec QQueue. Par exemple, vous pouvez utiliser [[qlist#isEmpty()]] pour tester si la file est vide, et vous pouvez parcourir une instance de QQueue en utilisant les classes itératrices de [[QList]] (par exemple, [[QListIterator]]). Mais en plus, QQueue fournit trois fonctions pour faciliter l'utilisation de la sémantique FIFO : [[#enqueue()]], [[#dequeue()]] et [[#head()]]. Le type de valeur de la file doit être un [[containers#assignable-data-type|type de données assignables]]. Cela couvre la plupart des types de données qui sont couramment utilisés, mais le compilateur ne vous laissera pas, par exemple, stocker un [[QWidget]] comme valeur. Utilisez à la place [[QWidget]]*. Voir aussi [[QList]] et [[QStack]]. ==== Fonctions membres ==== === QQueue() === ''QQueue::QQueue ()'' Construit une file vide. === ~QQueue() === ''QQueue::~QQueue ()'' Détruit la file. Les références des valeurs de la file et tous les itérateurs de celle-ci deviennent invalides. === dequeue() === ''T QQueue::dequeue ()'' Retire l'élément du début de la file et le retourne. Cette fonction suppose que la file n'est pas vide. Elle est identique à [[qlist#takeFirst|QList::takeFirst()]]. Voir aussi [[#head()]], [[#enqueue()]] et [[qlist#isEmpty()]]. === enqueue() === ''void QQueue::enqueue(const T &t)'' Ajoute la valeur ''t'' à la fin de la file. Elle est identique à [[qlist#append|QList::append()]]. Voir aussi [[#dequeue()]] et [[#head()]]. === head() === ''T &QQueue::head ()'' Retourne une référence de l'élément du début de la file. Cette fonction suppose que la file n'est pas vide. Elle est identique à [[qlist#first|QList::first()]]. Voir aussi [[#dequeue()]], [[#enqueue()]] et [[qlist#isEmpty()]]. === head() === ''const T &QQueue::head() const'' Il s'agit d'une fonction surchargée. ==== Remerciements ==== Merci à Pierrick Martellière pour la traduction et à , et à pour leur relecture !