He escrito toneladas de funciones operator<<(std::ostream &, const T &)
- son increíblemente útiles.¿Alguien realmente usa operadores de extracción de flujo?
nunca he escrito una función operator>>(std::istream &, T &)
en código real o incluso utilicé los operadores de extracción de los tipos predefinidos (OK, tal vez para std::string
). ¿Son apropiados solo para programas de ejemplo cortos y libros de texto? ¿Es operator>>
una característica fallida de C++?
Las preguntas se han preguntado sobre safely overloading stream operators. Lo que me pregunto es si alguien hace esto en la práctica.
Incluso para algo simple como reading input from a file in C++ No puedo sugerir usar operator>>
. Es muy difícil escribir código sólido para detectar y manejar errores en la entrada (o no sé cómo).
Si no está de acuerdo, muestre un buen ejemplo del uso de operator>>
, quizás respondiendo la última pregunta a la que me he vinculado.
Wrapup: Gracias por las respuestas a todos, muchas buenas opiniones. La respuesta de Manuel me hizo reconsiderar mi renuencia a usar
op>>
, así que acepté esa.
Debe definir 'op >>' si es compatible con 'lexical_cast'. (http://www.boost.org/doc/libs/1_42_0/libs/conversion/lexical_cast.htm). – kennytm