Oh, Mist. Ich habe gerade einen Riesenbeitrag verfasst, mit Beispielen und alles im Details erklärt und kurz bevor ich fertig war, muss ich irgendeine komische Tastenkombination gedrückt haben und nun ist alles weg. Ich weiß, diese Meldung trägt nichts zum Thread bei, aber das ist so ärgerlich, das muss ich gerade einfach ablassen.
P.S.: Die wichtigsten Punkte:
-Deine Datentypen passen nicht. Postleitzahlen und Hausnummern sind keine Zahlen. Im Prinzip ist alles String.
-operator>> ist hier ebenfalls nicht angemessen, da fast alle (alle?) der Datenfelder auch Leerzeichen enthalten können (operator>> trennt bei allen Whitespaces).
-Die übliche Vorgehensweise wäre, das Einlesen in eine Funktion zu packen, die einen Fehlerstatus zurück gibt. Die ruft man auf, dann prüft man den Fehlerstatus, dann (und nur bei Erfolg) speichert man das Ergebnis. Da die Daten hier alle Zeichenketten sind, wäre so eine Funktion einfach eine Verkettung vieler getlines. Und da getline selber ggf. einen Fehlerstatus im Stream setzt, muss man das nicht einmal selber machen.
-Das wurde hier im Forum schon sehr oft diskutiert. Oft ist in Threads über Eingabeprobleme der Nutzer "Werner Salomon" aktiv. Darüber kannst du gezielt mittels der Forensuche (oder besser: Google mit "site:www.c-plusplus.net") nach diesen Threads suchen.