Промывка происходит в следующих случаях:
Похоже, что в большинстве обычных программ std :: endl не нужен, но используется почти везде.
Так кажется в большинстве обычных программ,
std::endl
в основном не требуется, но он используется почти везде.
Нет, это не так избыточный, с момента реализации промывки вдоль '\n'
не предписано стандартом. Это просто поведение конкретной реализации, в то время как поведение std::endl
всегда четко определен.
станд :: сегг
Но что, если я не хочу писать в stderr, а скорее в stdout?
станд :: CIN
Но что, если я просто хочу дать пользователю некоторое обновление статуса и не хочу ничего вводить?
завершение программы
Как и выше, что, если я хочу что-то сказать пользователю до программа выполнена?
во многих реализациях стандартный вывод буферизуется строкой, что означает, что «\ n» все равно сбрасывается
Но как насчет платформ, которые этого не делают? Независимо от того, существует ли такая платформа в настоящее время, я хочу, чтобы мой код работал так, как задумано в стандарте, а не как «meh, вероятно, будет хорошо во всех реализациях».
Если все вышеперечисленное применимо (на самом деле всегда применяется четвертый пункт), вам необходимо промыть «вручную». Если флеш обрабатывается одним из первых трех, вы этого не сделаете.