Cómo limpiar correctamente un stringstream en C++ y prepararlo para su reutilización
¡Hola a todos! Soy nuevo en C++ y me encontré con un problema al trabajar con stringstream. Necesito formar strings en un bucle usando stringstream, pero después de la primera iteración no se limpia y los datos se acumulan. ¿Podrían indicarme cómo restablecer correctamente el estado de stringstream?
Aquí está mi código:
```cpp
#include
#include
#include
int main() {
std::stringstream ss;
for (int i = 0; i < 3; ++i) {
ss << "Number: " << i;
std::string result = ss.str();
std::cout << "Iteration " << i << ": " << result << std::endl;
// Aquí intento limpiar ss, pero no sé cómo hacerlo correctamente
// ss.str(""); // Lo probé así - no funciona
}
return 0;
}
```
Salida de este código:
```
Iteration 0: Number: 0
Iteration 1: Number: 0Number: 1
Iteration 2: Number: 0Number: 1Number: 2
```
Quiero que en cada iteración se muestre solo el valor actual, es decir:
```
Iteration 0: Number: 0
Iteration 1: Number: 1