Frage

Ich wollte nur wissen, was ist der Unterschied zwischen clear () und str ( "");

Zum Beispiel:

stringstream ss("Stack Overflow");

ss.clear();

ss.str("");

ich den zugrunde liegenden technischen Unterschied wissen wollte.

War es hilfreich?

Lösung

clear() löscht den Fehlerzustand-Flags im stringstream. Das heißt, es setzt den Fehlerzustand zu goodbit (die gleich Null ist).

str("") setzt das zugehörige String-Objekt auf den leeren String.

Sie eigentlich tun völlig verschiedene Dinge. Die eigentümliche Wahl der Namen nur macht es Ton , als ob sie ähnliche Aufgaben ausführen.

Andere Tipps

void clear ( iostate state = goodbit ) //clears and sets error flag passed as parameter

string str ( ) const;          //to get value from string stream
void str ( const string & s ); //to set value to string stream
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top