C ++: "std :: endl" vs "\ n"

Muchos libros de C ++ contienen código de ejemplo como este ...

std::cout << "Test line" << std::endl;

... así que siempre he hecho eso también. Pero he visto un montón de código de desarrolladores que trabajan así:

std::cout << "Test line\n";

¿Existe una razón técnica para preferir una sobre la otra, o se trata simplemente de codificar el estilo?

Respuestas a la pregunta(12)

Su respuesta a la pregunta