istream_iterator может прочитать что угодно, если есть перегрузка «operator >>», и это можно скопировать и назначить.
Хотя это возможно, я не думаю, что это хороший способ чтения,пользователь должен вручную ввести последовательность EOF, чтобы завершить выполнение итератора.
Чтобы избежать использования EOF, вы можете позволить пользователю вводить несколько записей, но большинство людей вряд ли узнают количествозаписей до того, как они его введут.
Лучшим выбором может быть чтение по строкам и использование потока строк для извлечения данных.Таким образом, вы можете распознать некоторый предопределенный шаблон (например, пустую строку) как конец ввода, прежде чем отправлять их в stringstream в качестве данных.