std::basic_streambuf<CharT,Traits>::~basic_streambuf - cppreference.com

From cppreference.com

virtual~basic_streambuf();This destructor has no effect: the members of this basic_streambuf (the pointers and the locale) are destructed in accordance with the usual object destruction sequence after this destructor returns. However, since it is declared public virtual, it allows the objects that are derived from std::basic_streambuf to be deleted through a pointer to base class.

Parameters

(none)

Example

Run this code

#include<fstream>#include<iostream>intmain(){std::filebuf*fbp=newstd::filebuf;fbp->open("test.txt",std::ios_base::out);fbp->sputn("Hello\n",6);std::streambuf*sbp=fbp;deletesbp;// the file is closed, output flushed and writtenstd::ifstreamf("test.txt");std::cout<<f.rdbuf();// proof}Output:

Hello Defect reports

The following behavior-changing defect reports were applied retroactively to previously published C++ standards.

DR Applied to Behavior as published Correct behavior

LWG 54

C++98 the effect of the destructor was not specified specified as no effect See also