Quiero saber cuál es la diferencia entre string y stream en C++, y qué es stringstream?¿Qué son las clases "string", "stream" y "stringstream" en C++?
Respuesta
Muy informalmente: Una cadena es una colección de caracteres, una secuencia es una herramienta para manipular datos en movimiento. Una secuencia de cadenas es una clase de C++ que le permite usar una cadena como fuente y destino de datos para una secuencia.
También ... google es tu amigo.
Supongo que un stringstream es como un iostream, pero en lugar de escribir o leer desde un archivo, usted escribe o lee desde una cadena.
istream
yostream
: interfaces para el flujo de datos (archivos, tomas de corriente, etc.)istringstream
: unistream
que envuelve una cadena y ofrece a sus contenidosostringstream
: unostream
que guarda el contenido escrito a como una cadena
Ejemplo:
istringstream datastream("1 2 3");
int val;
datastream >> val;
cout << val << endl; // prints 1
datastream >> val;
cout << val << endl; // prints 2
datastream >> val;
cout << val << endl; // prints 3
ostringstream outstream;
outstream << 1 << "+" << 2 << "=" << 3;
cout << outstream.str() << endl; // prints "1+2=3"
En C y/o Unix, la metáfora básica era el archivo. Salida estándar, estándar en, tomas de red fueron representados utilizando descriptores de archivo. Por lo tanto, puede usar fprintf()
para escribir en estos "archivos" sin saber qué hay realmente debajo.
Como una alternativa más segura y más fría, C++ presentó iostream como la metáfora básica que está casi integrada en el lenguaje usando el operador <<
. De nuevo, se puede acceder a archivos, cadenas y (con la biblioteca) a través de transmisiones sin saber de qué se trata.
- 1. ¿Qué significa stream? ¿Cuáles son sus características?
- 2. String Stream en C
- 3. memorystream - stringstream, string, otros?
- 4. ¿Qué son las clases S1 y S2?
- 5. stringstream, string y char * confusión de conversión
- 6. C++: stringstream a vector
- 7. ¿Cómo convierto de stringstream a string en C++?
- 8. stringstream errors C++
- 9. ¿Qué son las etiquetas de documentación C#?
- 10. ¿Qué son las colecciones genéricas en C#?
- 11. ¿Qué son las interfaces y los delegados en C#?
- 12. Escribir String to Stream y leerlo de nuevo no funciona
- 13. ¿Las clases internas son livianas?
- 14. Stream Reuse en C#
- 15. XML writer y Memory Stream C#
- 16. ¿Todas las clases finales son inmutables?
- 17. C++: vector a stringstream
- 18. ¿por qué las clases STL ifstream y ofstream no toman std :: string como nombres de archivo?
- 19. Java: ¿Por qué son necesarias las clases de contenedor?
- 20. ¿Qué son las cookies firmadas y por qué son útiles?
- 21. ¿Cuándo debería usar string en lugar de stringstream?
- 22. ¿Por qué todas las clases anónimas son implícitamente finales?
- 23. C# - ¿Cuáles son los beneficios de las clases "parciales"?
- 24. ¿Cuáles son las clases internas finales?
- 25. ¿Qué son exactamente las definiciones, declaraciones y asignaciones de C++?
- 26. std :: stringstream y std :: ios :: binario
- 27. ¿Qué se entiende por clases en sí mismas son objetos?
- 28. Diferencia entre las clases parciales C# y Objective C?
- 29. Cómo convertir clases en Dictionary <string, string>?
- 30. zlib de C++ a C# (Cómo convertir byte [] a stream y stream to byte [])
Se supone que Stackoverflow es un recurso de tipo wiki en la parte superior de muchas búsquedas de Google. La gente puede hacer cualquier pregunta si no se le ha preguntado antes. – fluffels