C++ Referenz und Zeiger < Softwaretechnik+Pro < Praktische Inform. < Hochschule < Informatik < Vorhilfe
|
Status: |
(Frage) beantwortet | Datum: | 10:37 Do 19.02.2009 | Autor: | DarkCell |
Also,
Grundfrage ist, wann benutze ich Zeiger, wann Referenzen und wann die eigentlichen Variablen?
Was macht eigentlich den Unterschied aus zwischen Referenz und Zeiger?
Und wann setze ich das Sternchen für einen Zeiger ( * ) nach dem Variablennamen, also int* p, aber manchmal *p?
Und entsprechend bei Referenzen double& a oder &a?
Ich hoffe ihr könnt mir helfen schonmal Danke im voraus, und sry für die sehr allgemeine Fragenstellung aber irgendwie hab ich das Gefühl noch nich ganz verstanden zu ahben was eigentlich ein Zeiger oder eine Referenz ist.
|
|
|
|
Hallo DarkCell,
> Also,
> Grundfrage ist, wann benutze ich Zeiger, wann Referenzen
> und wann die eigentlichen Variablen?
Zeiger benutzt man normalerweise, um auf größere benutzte Speicherinhalte zu verweisen. Z.B. double k=2.0; double* p = &k;. Jetzt kann man p z.B. an andere Funktionen übergeben und mittels *p den Inhalt der Variable k verändern. Referenzen sind Zeiger die nicht mehr "verbogen" werden können. D.h. eine Referenz kann im Gegensatz zu einem Zeiger nicht mehr verändert werden. Referenzen werden oft in Funktionsköpfen benutzt, um Programmierfehler zu reduzieren, die aus der unabsichtlichen Verbiegung von Zeigern resultieren.
Variablen kann man benutzen, wenn man nur Grundwerte, wie z.B. 1, 2 an eine Funktion übergibt. Dann ist es nicht notwendig Zeiger zu benutzen, denn Zeiger und Referenzen benutzt man, um große Speicherbereiche bei einer Übergabe an eine Funktion nicht unnötig zu kopieren.
Viele Grüße
Karl
|
|
|
|