Есть basic_istream (по честному — это stringstream), надо вычитать из него ЗАДАННОЕ колличество символов и отправить в строку.
Выражение basic_istream >> string не катит т.к. вычитается произвольное колл-во символов, промежуточный буфер тоже не катит,
а запись вида
str.resize(4);//Не обязательно так, но суть такова
stream.read(&str[0],4);
тоже не катит, т.к. на ресайзинге может кто-то поправить значение, да и вобще криво с элементами контейнеров на прямую работать.
Как быть?