在C ++中,“ std :: endl”和“ \ n”有什么区别?

“ \ n”输出换行符(使用适当的特定于平台的表示形式,因此它在Windows上生成一个“ \ r \ n”),但是std::endl进行相同的操作并刷新流。通常,您不需要立即刷新流,这只会降低性能,因此,在大多数情况下,没有理由使用std::endl。

当由于希望及时将输出对用户可见(即不延迟)而希望手动刷新流时,应使用std::endl而不是在流中写入“ \ n”。