std::strstream:: ~strstream
From de.cppreference.net
|
virtual
~strstream
(
)
;
|
(in C++98 veraltet)
(in C++26 entfernt) |
|
Zerstört ein
std::strstream
-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 einem dynamischen
strstream
aufgerufen wurde und
freeze(false)
danach nicht aufgerufen wurde, leckt dieser Destruktor Speicher.
Beispiel
Diesen Code ausführen
#include <iostream> #include <strstream> int main() { { std::ostrstream s; // dynamischer Puffer s << 1.23 << std::ends; std::cout << s.str() << '\n'; s.freeze(false); } // Destruktor aufgerufen, Puffer freigegeben { std::ostrstream s; s << 1.23 << std::ends; std::cout << s.str() << '\n'; // buf.freeze(false); } // Destruktor aufgerufen, Speicherleck { std::istrstream s("1.23"); // konstanter Puffer double d; s >> d; std::cout << d << '\n'; } // Destruktor aufgerufen, nichts freizugeben }
Ausgabe:
1.23 1.23 1.23