Was kann dazu führen, dass ein Stream in den Status "schlecht" wechselt?

In C ++ hat jeder Stream einebad bisschen:

Dieses Flag wird von Vorgängen gesetzt, die für den Stream ausgeführt werden, wenn beim Lesen oder Schreiben von Daten ein Fehler auftritt, der im Allgemeinen den Verlust der Integrität des Streams verursacht.

Quelle

Was würde dazu führen, dass ein Stream "die Integrität verliert" und in den Stream gelangt?bad Zustand? Dies ist nicht dasselbe wie dasfail Zustand, der am häufigsten auftritt, wenn ein Eingabestream versucht, einen Wert in einer Variablen zu speichern, die diesen Wert nicht akzeptieren kann (z. B. der Versuch, eine Zeichenfolge in einer Ganzzahlvariablen zu speichern).

Beachten Sie, dass diese Frage eine allgemeinere Form von istC ++ - Datei schlechtes Bit, das spezifisch für Dateieingabeströme ist; Diese Frage ist kein genaues Duplikat, da sie sowohl für Eingabe- als auch für Ausgabeströme im Allgemeinen gilt.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage