#include <algorithm>
#include <iostream>

int main()
{
	using namespace std;
	int a[] = {1, 2, 3, 4, 5};
	
	auto const f = [&](){
		auto const g = [=](){
			for_each(a, a + (sizeof(a) / sizeof(a[0])), [](int i){ cout << i << endl; });
		};
		g();
	};
	
	a[0] = 2;
	
	f();
}
	
	