Weil besser als gut!

Zeiger auf Mitglieder (C++)Auf nicht statische Klassenmitglieder kann über sog. element pointer zugegriffen werden. Dies wird zwar relativ selten verwendet, soll hier aber dennoch gezeigt werden, da die etwas exotische Syntax erklärungsbedürftig ist. Eine Klasse X habe die public members int a; und void f1(int i);. Folgende element pointer können dann deklariert (nicht definiert) werden: C++ int X::*zXint; void (X::*zXvoid)(int); Evtl. gibt es noch kein Objekt !
Den Zeigern können jetzt 'Memberadressen' zugewiesen werden ("an Member binden"), obwohl evtl. noch immer kein Objekt existiert: C++ zXint = &X::a; zXvoid = &X::f1; Zur Dereferenzierung und Bindung dieser Zeiger an ein Objekt werden die speziellen Operatoren .* und ->* eingesetzt (->*, falls der linke Operand ein Zeiger auf ein Objekt ist). BeispielDas Programm elem_point.cpp aus der Vorlesung
Kategorie: Programmieren2 | 2. Semester |
Zahlen & Daten
Publish |