До сих пор отсутствует самый основной ингредиент: создание и доступ к локальным переменным в стеке. Когда рекурсия вступит в игру, вы скоро поймете необходимость наличия истинных локальных переменных. Может показаться, что нам это совсем не нужно, поскольку неназванная лямбда-функция никак не может себя назвать; по крайней мере, не напрямую. При некотором расположении возникают ситуации, когда функция лямбды становится рекурсивной. Типичная ситуация возникает, когда мы храним функцию лямбда в Boost.Function, по существу называя неназванную лямбду.
Также будут ситуации, когда лямбда-функция передается в качестве аргумента другой функции. Это более распространенная ситуация. В этом случае функция лямбда принимает новый объем; новые аргументы и, возможно, новые локальные переменные.
В этом разделе рассматриваются локальные переменные и вложенные области лямбды.