Zeiger & Referenzen



  • Hallo!

    Mal ne Frage zu Zeigern und Referenzen: ich hab mir beides angeschaut und die Referenzen scheinen mir von der Verwendung her doch einfacher. Wie haltet ihr das, programmiert ihr in C++ auch mit Zeigern? Oder sind Zeiger in C++ eher unüblich?



  • Hi,

    Referenzen kann man nach der Initialisierung nicht mehr zuweisen. Die zuweisung betrifft dann nur das Object, auf dass die Referenz zeigt.
    Bei Zeigern kann man, wenn man den Dereferenzierungsoperator weglässt, eine neue Adresse zuweisen.



  • Beides hat seine Vor und Nachteile.
    Benutz mal die Suche, erst vor einem Monat hatten
    wir eine Diskussion darüber.

    Devil



  • okay, werd ich mal machen. Hätte dann aber noch eine konkrete Frage:
    angenommen ich habe zwei Funktionen. Funktion1 rechnet zB einen Wert x aus. Nun möchte ich in Funktion2 mit diesem Wert weiterrechnen. Könnte man das mit Zeigern oder Referenzen lösen? Ich kriegs nämlich nicht hin und hab als einzige Lösung, dass Funktion1 den Wert x per return zurückgibt und Funktion2 ihn dann quasi als Parameter übernimmt. Geht das noch anders? Danke!



  • void func1(int &x)
    {
    	++x;
    }
    
    void func2(int &x)
    {
    	--x;
    }
    
    int main()
    {
    	int a = 5;
    	func1(a);
    	func2(a);
    	// a ist 5
    
    	return 0;
    }
    

Log in to reply