Не удается корректно очистить поток
От: syasevich  
Дата: 17.08.10 07:24
Оценка:
Здравствуйте,

Есть следующий код:

stringstream s;
int i;

s << 1;
cout << s.str() << endl; // на экране 1

s >> i;
cout << s.str() << endl; // на экране 1

s.str(std::string()); // удаление данных из потока
s << 5;
cout << s.str() << endl; // на экране пусто


Не удается записать данные в поток, после его очистки. Самое странное, что без строки s >> i; все работает правильно и в чистый поток пишется 5. В чем может быть проблема.

Спасибо.
stringstream
Re: Не удается корректно очистить поток
От: Bell Россия  
Дата: 17.08.10 07:42
Оценка: 1 (1)
Здравствуйте, syasevich, Вы писали:

S>
S>stringstream s;
S>int i;

S>s << 1;
S>cout << s.str() << endl; // на экране 1

S>s >> i;
S>cout << s.str() << endl; // на экране 1

S>s.str(std::string()); // удаление данных из потока
s.clear();//Сброс взведенных флагов
S>s << 5;
S>cout << s.str() << endl; // на экране пусто
S>
Любите книгу — источник знаний (с) М.Горький
Re[2]: Не удается корректно очистить поток
От: syasevich  
Дата: 17.08.10 07:49
Оценка:
Спасибо, Bell.
Re[3]: Не удается корректно очистить поток
От: Bell Россия  
Дата: 17.08.10 07:52
Оценка:
Здравствуйте, syasevich, Вы писали:

S>Спасибо, Bell.

На здоровье
Любите книгу — источник знаний (с) М.Горький
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.