Поставщик стандартной библиотеки должен решать, как реализовать stringstream (или любую другую библиотечную функцию в этом отношении). Вы можете посмотреть на заголовок sstream, поставляемый с вашим компилятором, чтобы увидеть, как он там реализован. Это много с теоретической стороны ...
Насколько показывает практический опыт и измерения, ostringstream часто медленен по сравнению с другими методами форматирования данных в виде символьных строк. Но опять же, оптимизируйте только после того, как вы измерили, что то, что вы хотите оптимизировать, действительно является узким местом производительности, иначе в лучшем случае это просто пустая трата времени.
Если ваши измерения показывают, что производительность ostringstream действительно является проблемой для вас, рассмотрите возможность использования Boost.Karma . Конечно, есть больше причин использовать Boost.Karma, чем просто производительность, поэтому, если вы начинаете новый код, а не хотите модифицировать существующий, используя строковые потоки, вы можете использовать Karma с самого начала. *