-
Das Leben ist der Lehrer
Wie "wacked" bereits angesprochen hat:
Wenn du bei dem Thema Rückgabe von Funktionen schon warst , wirst du den Grund verstehen. Damit ist es nur möglich ein (1!) Wert zurückzugeben.
Das ist aber blöd, da du manchmal mehr als einen Wert von einer Variable verändern möchtest.
Dafür gibt es die sogenannten Zeiger und Referenzen. Es hat sich allerdings eingebürgert für solche Aufgaben, wie ich gerade geschildert habe, Pointer, also Zeiger zu verwenden. Die Zeiger erkennst du an dem "*" vor einer zunächst aussehenden Variable. Der Pointer macht nichts anderes, als die Adresse zu speichern und wenn dann der Pointer verändert wird, wird die Zieladresse auf die er zeigt, verändert.
Diese Zieladresse findest du mit einem "&" heraus. Bei der Initialisierung sieht das dann z.B. so aus:
int *Zeiger = &Variable;
Referenzen können zwar auch dazu benutzt werden, aber es hat sich eingebürgert, diese zu benutzen um Arbeit für den Rechner zu sparen. Das heißt, man benutzt sie, wenn man größere Werte einer Funktion übergeben will, sie allerdings nicht ändern möchte. Damit wird verhindert, dass eine 2. Kopie erstellt wird und spart somit Rechnenarbeit.
gruß
P.S. Wenn du was nicht verstanden hast, dann frag lieber noch mal nach
Geändert von DoS (28.06.2009 um 10:05 Uhr)
-
Stichworte
Berechtigungen
- Neue Themen erstellen: Nein
- Themen beantworten: Nein
- Anhänge hochladen: Nein
- Beiträge bearbeiten: Nein
-
Foren-Regeln