Capturing Variables in C++ Lambda Functions