фактически, они возвращают себя, то есть
std::cin >> foo
- это выражение (с побочным эффектом), которое возвращает std::cin
.Также бывает, что iostream
s можно преобразовать в bool
, они имеют значение true, если они готовы к получению ввода, или имеют вывод для предоставления, и false, если они закрыты или находятся в конце своих соответствующих файлов.