Personalmente, me parece muy raro que quiera realizar la transmisión dentro y fuera de la misma secuencia de cadena.
Por lo general, quiero inicializar una secuencia desde una cadena y luego analizarla; o transmitir cosas a una secuencia de cadena y luego extraer el resultado y almacenarlo.
Si está transmitiendo hacia y desde la misma transmisión, debe tener mucho cuidado con el estado de la transmisión y las posiciones de la transmisión.
El uso de 'sólo' istringstream
o ostringstream
expresa mejor su intención y le da algunas comprobaciones contra errores tontos como el uso accidental de <<
frente >>
.
No podría haber alguna mejora en el rendimiento, pero no estaría mirando que en primer lugar.
No hay nada malo con lo que has escrito. Si encuentra que no funciona lo suficientemente bien, entonces podría perfilar otros enfoques, de lo contrario, seguir con lo que es más claro. Personalmente, solo iría por:
std::string stHehe( "Hello stackoverflow.com!" );