strstream returned a char * , which was very difficult to manage with, since it was not indicated anywhere how it was allocated. Thus, it was impossible to find out whether to remove it or call free () on it or do something else completely. The only really satisfactory way to free it was to return it back to strstream using the freeze() function. It was not obvious enough that many people were mistaken. stringstream returns a string object that controls itself, which is much less error prone.
There was also the problem of using ends to break the line, but I believe that the release problem was the main cause of obsolescence.
anon May 12, '10 at 15:29 2010-05-12 15:29
source share