Что все считают, что использование lambdas для выполнения вложенных функций в С++? Например, вместо этого:
static void prepare_eggs()
{
...
}
static void prepare_ham()
{
...
}
static void prepare_cheese()
{
...
}
static fry_ingredients()
{
...
}
void make_omlette()
{
prepare_eggs();
prepare_ham();
prepare_cheese();
fry_ingredients();
}
Вы делаете это:
void make_omlette()
{
auto prepare_eggs = [&]()
{
...
};
auto prepare_ham = [&]()
{
...
};
auto prepare_cheese = [&]()
{
...
};
auto fry_ingredients = [&]()
{
...
};
prepare_eggs();
prepare_ham();
prepare_cheese();
fry_ingredients();
}
Придя из поколения, которое научилось программировать с помощью Pascal, вложенные функции имеют для меня смысл. Однако это использование, похоже, путало некоторых из менее опытных разработчиков в моей группе при работе во время обзора кода, где я использовал lambdas таким образом.