Namespaces
Variants

std::ostrstream:: ~ostrstream

From cppreference.net
virtual ~ostrstream ( ) ;
(устарело в C++98)
(удалено в C++26)

Уничтожает объект std::ostrstream , что также уничтожает член std::strstreambuf , что может вызвать функцию деаллокации, если базовый буфер был динамически выделен и не заморожен.

Параметры

(нет)

Примечания

Если str() был вызван для динамического ostrstream и freeze(false) не был вызван после этого, этот деструктор приводит к утечке памяти.

Пример

#include <iostream>
#include <strstream>
int main()
{
    {
        std::ostrstream s; // динамический буфер
        s << 1.23;
        std::cout << s.str() << '\n';
        s.freeze(false);
    } // вызывается деструктор, буфер освобождается
    {
        std::ostrstream s;
        s << 1.23;
        std::cout << s.str() << '\n';
//      buf.freeze(false);
    } // вызывается деструктор, утечка памяти
}

Вывод:

1.23
1.23