jeudi 10 septembre 2020

Is there any benefit of storing lambda function into std::function? [duplicate]

From https://en.cppreference.com/w/cpp/utility/functional/function

void print_num(int i)
{
    std::cout << i << '\n';
}
 
int main()
{
    // store a free function
    std::function<void(int)> f_display = print_num;
    f_display(-9);

    // store a lambda
    std::function<void()> f_display_42 = []() { print_num(42); };
    f_display_42();
}

What is the advantage of storing a lambda into a name than the previous approach ?

Aucun commentaire:

Enregistrer un commentaire