Конечно, вы можете достаточно легко написать свою собственную функцию для обработки простых десятичных строк. Стандартные функции обрабатывают различные альтернативы в соответствии с числовой базой и локалью, что делает их медленными в любом случае.
Да, stringstream
добавит выделение кучи поверх всего этого. Нет, производительность действительно не имеет значения, пока вы не заметите разницу.
Существует более быстрый вариант - использовать устаревший класс std::strstream
, который не владеет своим буфером (следовательно, не делает копию или не выполняет распределение). Я бы не назвал это «лучше».