Как std::iostream
узнаёт, когда надо делать flush()
(не указывая это вручную манипуляторами или явным вызовом)?
Судя по документации, деструктор класса, а также деструктор базового std::ostream
класса этого не делают. Единственное, что удалось найти, это явный вызов std::cout.flush()
при завершении программы либо при чтении/записи из/в std::cin
, std::cerr
, которые связаны (tied) с std::cout
. Распространяются ли эти случаи на произвольный std::iostream
?
flush() вызывается endl - ом, (поэтому, кстати, endl тормозит программу), также при окончании программы (или потока) делается flush. Пишу ответом потому, что репутации не хватает на комменты
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Из интернета "достал" три функции из интернета по теме : "ввод только чисел"