Queue Klassenreferenz
Die Klasse
Queue realisiert eine einfach verkettete Liste von (sinnvollerweise spezialisierten)
Chain Objekten.
Mehr ...
#include <queue.h>
Aufstellung aller Elemente
|
Öffentliche Methoden |
| Queue () |
| Der Konstruktor initialisiert die Liste als leere Liste.
|
void | enqueue (Chain *item) |
| Das Listenelement item wird an das Ende der Liste angefügt.
|
Chain * | dequeue () |
| Liefert das erste Element der Liste und entfernt es gleichzeitig aus dieser.
|
bool | remove (Chain *item) |
| Mit dieser Methode kann das angegebene Element item aus der Liste entfernt werden, unabhängig von seiner Position dort.
|
Geschützte Attribute |
Chain * | head |
Chain ** | tail |
Ausführliche Beschreibung
Die Klasse
Queue realisiert eine einfach verkettete Liste von (sinnvollerweise spezialisierten)
Chain Objekten.
Die Implementierung ist etwas trickreich (siehe Vorlesung). tail verweist nämlich nicht, wie oft üblich, auf das letzte Element der Liste, sondern auf den next Zeiger des letzten Elements, bzw., solange die Liste noch leer ist, auf den head Zeiger der Liste. Dadurch muss beim Einfügen eines Elements an die Liste nicht überprüft werden, ob bereits Elemente in ihr enthalten sind. Beim Entfernen von Elementen kann auf die Fallunterscheidung allerdings nicht verzichtet werden.
Dokumentation der Elementfunktionen
void Queue::enqueue |
( |
Chain * |
item |
) |
|
Das Listenelement item wird an das Ende der Liste angefügt.
- Parameter:
-
| item | Listenelement, welches angefügt werden soll. |
Chain * Queue::dequeue |
( |
|
) |
|
Liefert das erste Element der Liste und entfernt es gleichzeitig aus dieser.
- Rückgabe:
- entferntes Kopfelement.
bool Queue::remove |
( |
Chain * |
item |
) |
|
Mit dieser Methode kann das angegebene Element item aus der Liste entfernt werden, unabhängig von seiner Position dort.
- Parameter:
-
| item | Element, welches entfernt werden soll. |
- Rückgabe:
- Gibt an, ob etwas entfernt wurde.
Die Dokumentation für diese Klasse wurde erzeugt aufgrund der Dateien:
- object/queue.h
- object/queue.cc