Verkettete Listen in C++ und Visual Basic (Informatik)


zurück zu Informatik, Homepage


5. Realisierung einer doppelt verketteten Liste in Visual Basic

In diesem Kapitel wird nun eine doppelt verkettete Liste in Visual Basic (Version 6) realisiert. Auch hier soll nur die grundsätzliche Vorgehensweise an einem sehr einfachen Beispiel gezeigt werden.

In dieses Beispiel soll wieder eine Textliste (z.B. eine Namensliste) erstellt werden, wobei zur Demonstration auch hier ein neuer Knoten immer nur an das Ende der Liste angehängt werden soll. Das Löschen des letzten Knotens wurde hier ebenfalls realisiert. Die Abbildung am Ende dieses Kapitels zeigt das ausgeführte Programm.

Auch hier wurde die gesamte Liste wieder mit zwei Klassen realisiert:

Realisierung einer doppelt verketteten Liste in Visual Basic
nach oben

5.1. Klasse clsNodeD

Neu in dieser Klasse ist die Membervariable, die auf den vorhergehenden Knoten zeigt m_pLast, Zeile 21), die dazugehörigen Funktionen zum Setzen und Lesen dieser Membervariable (Zeilen 91 bis 98) und auch die Initialisierung im Konstruktor (Zeile 51). Alles andere ist gleich wie die Klasse für einen einfach verketteten Knoten. Die Datei clsNodeD.pdf (36 KB) zeigt die Realisierung dieser Klasse.

Die Zeilennummern dienen auch hier nur der besseren Orientierung.

nach oben

5.2. Klasse clsLinkedListd

Die KLasse clsLinkedListd clsLinkedListD.pdf (115 KB) ist auch hier wieder etwas umfangreicher. Hier wurden wieder alle wichtigen Funktionen mit sämtlichen Fällen, so wie sie in Kapitel 2 beschrieben wurde, realisiert, mit Ausnahme des Scrollens.

Aufgrund der ausgiebigen Kommentar verzichte ich auch hier auf eine weitere Beschreibung. Für das Entfernen eines Knotens bzw. der gesamten Liste gilt auch hier dass Visual Basic ein dynamisch erzeugtes Objekt erst dann vom Speicher löscht, wenn keine Referenzen (Zeiger) auf dieses Objekt zeigen.

nach oben

5.3. Demonstrationsbeispiel

Auch hier ist das Demonstrationsbeispiel wieder sehr einfach. Dazu wird ein einfaches Formular (hier: frmLinkedList_doppelt) mit den folgenden (Standard-)Steuerelemente benötigt:

Die folgende Abbildung zeigt die Anordnung dieser Steuerelemente.

Steuerelemente für eine doppelt Verketteten Liste (Visual Basic)

So einfach wie das Formular ist, so einfach ist auch der Quellcode der dahintersteckt. Die Datei frmLinkedList_doppelt.pdf (29 KB) zeigt das relativ kurze Programm.

Hier nur kurz die wesentlichen Punkte:
In der Ereignisprozedur Form_Load muss eine Instanz der Verketteten Liste erzeugt werden (Zeilen 18 bis 21).
Das Hinzufügen eines neuen Knotens erfolgt durch das Anklicken der Taste cmdNeueDaten (Zeilen 25 bis 30), und das Anzeigen der gesamten Liste durch Anklicken der Taste cmdListeAnzeigen (Zeilen 34 bis 39).
Neu in diesem Demonstrattionsprojekt ist, dass der letzte Knoten der Liste gelöscht werden kann. Dies erfolgt mit der Taste cmdDatenLoeschen (Zeilen 43 bis 48).
Achtung: Die Taste cmdListeLoeschen löscht nur den Inhalt der List-Box lstListe. Sie entfernt nicht die verkettet Liste vom Speicher (Zeilen 52 bis 54)!

Die folgende Abbildung zeigt das erfolgreich kompilierte Programm in Aktion.

Einfaches Demo für eine doppelt verkettete Liste in Visual Basic
nach oben


zurück zu Informatik, Homepage

Autor: Buchgeher Stefan
Erstellt: 10. März 2007
Letzte Änderung: