codice:
    std::unordered_map<std::string_view, Strategy> strategies;
    std::string info_set {};

    for (auto& e : data) {
        info_set = e["cluster"].get<std::string>();
        Strategy strat {static_cast<int>(e["regret_sum"].size())};
        strategies[info_set] = strat;
    }
Questo non funziona (ed è quello che vorrei).
Se uso i puntatori invece non ho problemi, ma siccome vorrei inizializzare all'interno di una funzione e poi ritornare il tutto mi piacerebbe la prima soluzione.

Come risolvo?