der this-Zeiger

this in doppelt verketteten Listen

In doppelt verketteten Listen, die keine Unterscheidung in eine Listenklasse und eine Listenelementsklasse machen, werden this-Zeiger in der Regel benötogt. Dieses Beispiel wird hier nur kurz angedeutet. Komplexe verkettete Listen sollten, wie im nächsten Abschnitt an einem kleinen Beispiel demonstriert über oben erwähnte Trennung, implementiert werden.

  class Liste {
    Liste* vor;   // Vorgaenger
    Liste* nach;  // Nachfolger
  public:
    T inhalt;
    void append(Liste* m);
    Liste(T i) : inhalt(i) { vor = nach = this; }
  }

  void Liste::append(T m) { // -> vor -> this -> nach -> 
    Liste* l = new Liste;
    l->nach = nach;
    l->vor = this;
    nach->vor = l; 
    nach = l;
    l->inhalt = m;          // -> vor -> this -> l -> nach -> 
  }

  T a, b, c;
  Liste liste(a);
  liste.append(b);
  liste.append(c);