void startDrawLoop(function<bool()> func)
{
while (func()) {}
}
int main()
{
CubeRenderer cubeRenderer; TextRenderer textRenderer;
// Do initialization
auto drawLoop=[&] ()
{
cubeRenderer.draw();
textRenderer.draw();
return true;
}
startDrawLoop(drawLoop);
return 0;
}
If I change drawLoop to a function.
bool drawLoop()
{
// Error, cannot find cubeRenderer
cubeRenderer.draw();
textRenderer.draw();
return true;
}
How can I make reference to variables outside the function like what lambda captures do?