Ich habe einen lokalen std::vector<std::reference_wrapper<T> >
und jetzt will ich eine echte Kopie seiner Elemente zurückzukehren (d std::vector<T>
). Gibt es einen besseren Weg als eine Schleife?Wie std :: vector <std :: reference_wrapper <T>> konvertieren std :: vector <T>
Beispiel:
std::vector<T> foobar() {
std::vector<std::reference_wrapper<T> > refsToLocals;
/*
do smth with refsToLocals
*/
std::vector<T> copyOfLocals;
for (auto local : refsToLocals)
copyOfLocals.insert_back(local.get());
return copyOfLocals;
}