@JustFailer

Растет ли стек, если рекурсивный вызов функции — последняя операция?

Прошу прощения, если вопрос некорректен.
Например, имеется функция вида:
void doSomething() {
    // [...]
    if (a==0) {
        doSomething();
    }
}

В тэгах и C++, и Java т.к. интересны отличия.
  • Вопрос задан
  • 567 просмотров
Решения вопроса 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Java
Седой и строгий
В Java нет оптимизации хвостовой рекурсии.
Ответ написан
Комментировать
maaGames
@maaGames
Погроммирую программы
(С++)Сохраняется адрес возврата, так что растёт. Про Java не знаю, как ВМ реализована.
Всегда можно запустить бесконечную рекурсию и посмотреть, растёт ли память.)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы