Namespaces
Variants

std::ostrstream:: ~ostrstream

From cppreference.net
virtual ~ostrstream ( ) ;
(veraltet in C++98)
(entfernt in C++26)

Zerstört ein std::ostrstream -Objekt, was ebenfalls das Mitglied std::strstreambuf zerstört, was die Freigabefunktion aufrufen kann, falls der zugrundeliegende Puffer dynamisch alloziert und nicht eingefroren war.

Parameter

(keine)

Hinweise

Wenn str() auf einen dynamischen ostrstream aufgerufen wurde und freeze(false) danach nicht aufgerufen wurde, führt dieser Destruktor zu einem Speicherleck.

Beispiel

#include <iostream>
#include <strstream>
int main()
{
    {
        std::ostrstream s; // dynamischer Puffer
        s << 1.23;
        std::cout << s.str() << '\n';
        s.freeze(false);
    } // Destruktor aufgerufen, Puffer freigegeben
    {
        std::ostrstream s;
        s << 1.23;
        std::cout << s.str() << '\n';
//      buf.freeze(false);
    } // Destruktor aufgerufen, Speicherleck
}

Ausgabe:

1.23
1.23