вопрос о рекурсии c ++ и локальных переменных

Предположим, у меня есть такая рекурсия:

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

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

    doSomething(x+y);

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

Я знаю, что эта рекурсия выполняется бесконечно, но просто игнорирую это

Мой вопрос касается области видимости переменных x и y в дереве рекурсии ... будет ли область x и y действительна только для функции на этом конкретном этапе в дереве рекурсии? или когда я снова вызываю doSomething (), когда дочерний doSomething () в дереве рекурсии повторно объявляет x и y, он также сбрасывает родительские переменные x и y или создает совершенно новые действительные переменные x и y только для этого этапа в дереве рекурсии?

8
задан Jonathan Wood 1 May 2011 в 23:47
поделиться