J'ai essayé de créer un vecteur de lambda, mais a échoué:
auto ignore = [&]() { return 10; }; //1
std::vector<decltype(ignore)> v; //2
v.push_back([&]() { return 100; }); //3
Jusqu'à la ligne #2, il compile amende. Mais la ligne n ° 3 donne une erreur de compilation:
error: no matching function for call to 'std::vector<main()::<lambda()>>::push_back(main()::<lambda()>)'
Je ne veux pas d'un vecteur de pointeurs de fonction ou un vecteur d'objets de fonction. Toutefois, le vecteur de la fonction des objets qui encapsulent réel les expressions lambda, pourrait fonctionner pour moi. Est-ce possible?