Pregunta

Solo quería saber cuál es la diferencia entre clear () y str (" ");

Por ejemplo:

stringstream ss("Stack Overflow");

ss.clear();

ss.str("");

Quería saber la diferencia técnica subyacente.

¿Fue útil?

Solución

clear() borra los indicadores de estado de error en stringstream. Es decir, establece el estado de error en goodbit (que es igual a cero).

str("") establece el objeto de cadena asociado a la cadena vacía.

Realmente hacen cosas completamente diferentes. La elección peculiar de los nombres solo hace que suene como si realizaran tareas similares.

Otros consejos

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
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top