wann Zeiger benutzen?
-
Hallo,
ich komme von Java her und fange nun an mit C++. Das Konzept der Zeiger habe ich zwar verstanden, nur ist mir nicht ganz klar,wann sie eingesetz werden. Okay, für verkette Listen bzw wenn Elemente dynamisch zur Laufzeit erzeugt werden. Wenn ich also nicht vorher weiss, wieviel Elemente es geben wird. Ansonsten würde ich doch ein Array nehmen,oder? Und Zeiger auf Klassen. Wenn ich eine Klasse erzeugen will, muss ich ja den "new-Operator" nicht nehmen, nur wenn ich einen Zeiger auf die Struktur bzw Klasse setzen will. Ich bin etwas verwirrt. Mal abgesehen von verketteten Listen....wann braucht man Zeiger unbedingt? Oder sind sie nur ein Mittel, um eleganter zu programmieren? Wann deklariere ich einfach eine normale Variable und wann eine Zeigervariable? Ich blick da noch nicht so richtig durch. Kann mir jemand auf die Sprünge helfen?
Dankepaloncino
-
Du brauchst Zeiger unbedingt, wenn du "Dinge", deren Speicherbedarf du noch nicht kennst, handeln willst.
Also du möchtest ein Bild einlesen, weißt aber nicht, wieviele Pixel es hat.
Da kannst du doch nicht immer vom Worst-Case ausgehen sondern fragst beim Laden des Bildes und reservierst dann deinen Speicher nach bedarf.Aber dank Pointern kannst du den Speicher trozdem schon ansprechen, du kennst ja "seine Adresse".
-
Mach lieber erst noch ein paar Tutorials durch (ich denke deine Fragen sind zu grundlegend):
http://www.exonet.de/exonet.php3?doc=ctutorial/pointers.html
http://cplus.about.com/od/beginnerctutorial/l/aa040602b.htm
-
Diese Diskussion hatten wir bereits im C-Forum. Benutz mal die Forensuche, da gibt es sicher nicht nur einen Thread.
Vellas
PS: 800. Post *g*
-
Hallo,
danke für eure Antworten. Ihr habt sicher recht, ich hätte mal die Forensuche bemühen können. sorry! danke für die links, sieht gut aus
Grüßepaloncino