Friedrich-Alexander-Universität UnivisSuche FAU-Logo
Techn. Fakultńt Willkommen am Department Informatik FAU-Logo
Logo I4
Lehrstuhl für Informatik 4
Betriebssysteme
 
  Vorlesung
    - UnivIS-Infos
    - Inhalt
    - Folien
    - Videos
 
  Übungen
    - UnivIS-Infos
    - Inhalt
    - Module
    - Mailingliste
    - Ergänzendes Material
    - Terminübersicht
    - Aufgaben
       * Umgebung
       * Typische Fehler
       * Aufgabe 1
          Dokumentation
       * Aufgabe 2
          Dokumentation
       * Aufgabe 3
          Dokumentation
       * Aufgabe 4
          Dokumentation
       * Aufgabe 5
          Dokumentation
       * Aufgabe 6
          Dokumentation
       * Aufgabe 7
          Dokumentation
 
  Evaluation
Department Informatik  >  Informatik 4  >  Lehre  >  WS 2011/12  >  Betriebssysteme  >  Übungen  >  Aufgaben  >  Aufgabe 6

Queue Klassenreferenz

Die Klasse Queue realisiert eine einfach verkettete Liste von (sinnvollerweise spezialisierten) Chain Objekten. Mehr ...

#include <queue.h>

Klassendiagramm f├╝r Queue:
Zusammengeh├Ârigkeiten von Queue:

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.
Chaindequeue ()
 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

Chainhead
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
  Impressum   Datenschutz Stand: 2012-01-27 00:40   BO, DL