Возможно ли, чтобы поток streambuf
сохранился после разрушения разрушения его исходного потока?Имея поток streambuf потока упорства за разрушение потока?
streambuf* f() {
ifstream my_stream;
// ...
return my_stream.rdbuf();
}
void g() {
streambuf *s = f();
// ...
ifstream my_new_stream;
my_new_stream.rdbuf(s);
}
Т.е., я хочу указатель на streambuf
объекта, возвращенного f()
остается в силе даже после того, как my_stream
выходит из области видимости. В какой-то более поздний момент я хочу установить другого потока в сохраненный streambuf
.
Возможно ли это? Если да, то как?
Почему вы хотите это сделать? Почему вы не можете просто сохранить ссылку на `ifstream`? – casablanca 2010-12-04 17:18:10