Я запускаю себя через текстовый учебник на C++, который у меня есть для обновления программирования на C++. Одна из проблем практики (не вдаваясь в подробности) требует, чтобы я определял функцию, которая может быть передана ifstream или cin (например, istream) в качестве аргумента. Оттуда я должен прочитать поток. Проблема в том, что я не могу понять, как использовать этот инструмент и эффективно использовать конец потока. А именно:Найдите конец потока для cin & ifstream?
while(input_stream.peek() != EOF)
не будет работать для cin. Я мог бы переработать функцию, чтобы найти определенную фразу (например, «#End of Stream #» или что-то в этом роде), но я думаю, что это плохая идея, если поток файлов, который я передаю, имеет эту точную фразу.
Я думал использовать функцию перегрузки, но пока книга упомянула, когда она хочет, чтобы я сделал это. Я, вероятно, прилагаю слишком много усилий к этой одной проблеме практики, но мне нравится творческий процесс, и мне любопытно, есть ли такой способ сделать это без перегрузки.
Проверить этот вопрос: http://stackoverflow.com/questions/3197025/end-of-fileeof-of-standard-input -stream-stdin – Archie