ラムダのベクトルを作成しようとしましたが、失敗しました。
auto ignore = [&]() { return 10; }; //1
std::vector<decltype(ignore)> v; //2
v.push_back([&]() { return 100; }); //3
2行目までは、正常にコンパイルされます。しかし、3行目はコンパイルエラーを出します:
エラー: 'std :: vector <main():: <lambda()>> :: push_back(main():: <lambda()>)'の呼び出しに一致する関数がありません
関数ポインタのベクトルや関数オブジェクトのベクトルは必要ありません。ただし、実際のラムダ式をカプセル化する関数オブジェクトのベクトルは、私にとっては機能します。これは可能ですか?