Lesen und Schreiben eines std :: -Vektors in eine Datei korrekt mit Iteratoren
Ich versuche die Antwort zu verstehenHie, aber ich kann es scheinbar nicht zum Laufen bringen.
Hier ist, was ich versucht habe:
#include <algorithm>
#include <iostream>
#include <iterator>
#include <vector>
#include <fstream>
int main()
{
std::string path("numbersfile");
std::vector<int> myVector{1,16,32,64};
std::vector<int> newVector{};
std::ofstream FILE(path,std::ios::out | std::ofstream::binary);
std::copy(myVector.begin(),myVector.end(),std::ostreambuf_iterator<char>(FILE));
std::ifstream INFILE(path,std::ios::in | std::ifstream::binary);
std::istreambuf_iterator<char> iter(INFILE);
//std::copy(iter.begin(),iter.end(),std::back_inserter(newVector)); //this doesn't compile
std::copy(iter,std::istreambuf_iterator<char>{},std::back_inserter(newVector)); // this leaves newVector empty
}
newVector
ist nach dem letzten @ noch lecopy
. Wie könnte die letzte Anweisung aktualisiert werden, um @ zu füllenewVector
?