Frage zu c++ Rekursion und lokale Variablen

nehme an, dass ich diese Rekursion:

void doSomething(double j)
{
    double x;
    double y;

    x = j -1;
    y = j -2 ;

    doSomething(x+y);

    x = j + 31;
    y = j + 12 ;
}

Ich weiß, dass diese Rekursion führt unendlich, aber einfach ignorieren, dass

Meine Frage ist in Bezug auf die Variablen x und y Bereich in der rekursions-Baum...die werden x-und y-Bereich gelten nur für die Funktionen, die in dieser spezifischen Phase in der rekursions-Baum? oder wenn ich den Aufruf von doSomething() erneut, wenn das Kind doSomething() in der rekursions-Baum redeclares x und y, wird es einen reset der Eltern x-und y-Variablen so gut oder ist es ein ganz neuer x-und y-Variablen gültig ist, für die Bühne in der rekursions-Baum nur?

  • für die erste Frage, wie die Leute sagten, es benutzt seinen eigenen stack, so dass die variable nicht ändern. jede Rekursion-Funktion hat Ihren eigenen Wert von x und y. ich die foo Fall, die wir abnehmen minus 1 für jeden Anruf anders ist es, von der ersten Frage
Schreibe einen Kommentar