unverständnis datei einlesen



  • "CSV" steht für comma-separated values, was ziemlich selbsterklärend ist. Es gibt da Varianten von, die etwas anderes als ein Komma benutzen -- out bezieht sich hier wahrscheinlich auf das, was gern aus deutschen Tabellenkalkulationen fällt, bei denen das Komma als Trennzeichen in Dezimalzahlen belegt ist und daher als Feldtrenner meist ein Semikolon verwendet wird. Was du da hast, ist aber klassisches CSV.

    std::vector<std::vectorstd::string > funktioniert so:

    std::string ist eine Klasse. Man kann Objekte von ihr haben (etwa std::string s;)

    std::vector ist eine Klassenvorlage (bzw. Klassentemplate). Aus ihr können nach Bedarf Klassen erzeugt werden, aber sie ist selbst keine Klasse. Das bedeutet, dass man keine std::vector-Objekte haben kann, d. h.

    std::vector v; // Geht nicht. std::vector ist keine Klasse.
    

    std::vectorstd::string ist eine mit std::string als Parameter aus std::vector gestanzte Klasse, d. h. ein Vektor von Strings. Da std::vectorstd::string eine Klasse ist, kann man von ihr Objekte bauen. So werden Templates benutzt: Man stanzt eine konkrete Klasse (bzw. eine konkrete Funktion, wenn es eine Funktionsvorlage ist) aus ihnen und benutzt dann die wie alle anderen Klassen (bzw. Funktionen).

    std::vector<std::vectorstd::string > ist eine mit std::vectorstd::string als Parameter aus std::vector gestanzte Klasse, d. h. ein Vektor von Vektoren von Strings.



  • o o ,
    das war der Versuch einem Blinden das lesen bei zu bringen. Danke!
    Aber das ist mir im Moment noch zu hoch.
    Da sind noch ein Paar 100 Seiten Buch zwischen. Ich arbeite aber dran. PS. mein Code läuft nun auch.
    Eigentlich habe ich alles Richtig gemacht. Ich musste nun feststellen das ich durch die Ànderung der Datei diese mit meinem Programm nicht mehr öffnen konnte. Mit dem Texteditor war es aber kein Problem.
    Ich habe nun die Originaldatei genommen und es hat sofort funktioniert.
    Aber aus Fehlern kann man lernen 😉
    Allen noch einen schönen Abend.


Anmelden zum Antworten