Re: basic_istream >> string
От: Conr Россия  
Дата: 14.07.08 14:16
Оценка:
Здравствуйте, loknalori, Вы писали:

L>Выражение basic_istream >> string не катит т.к. вычитается произвольное колл-во символов, промежуточный буфер тоже не катит,

L>а запись вида
L>
L>str.resize(4);//Не обязательно так, но суть такова
L>stream.read(&str[0],4);
L>

L>тоже не катит, т.к. на ресайзинге может кто-то поправить значение, да и вобще криво с элементами контейнеров на прямую работать.

L>Как быть?
    std::istream_iterator<unsigned char> iter(stream);

    int count = 4;
    while( count-- )
        str += *iter++;
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.