Разница между ostringstream и stringstream заключается в их назначении:
Таким образом, ostringstream используется для вывода данных, а stringstream — для работы с потоком, когда нужно и читать, и писать. 14
Выбор между этими классами зависит от конкретных задач разработки. Если нужно только писать данные в поток без возможности доступа к ним через него, то подойдёт ostringstream. 4 Если же требуется работать с потоком, где происходит и чтение, и запись, то лучше выбрать stringstream. 14