std::basic_streambuf<CharT,Traits>::~basic_streambuf
来自cppreference.com
< cpp | io | basic streambuf
virtual ~basic_streambuf(); |
||
此析构函数没有效果:此 basic_streambuf
的成员(指针和本地环境)与此析构函数返回后的通常对象析构序列一致的顺序析构。然而,因为它被声明为公开虚函数,所以可以通过指向基类的指针删除从 std::basic_streambuf
派生的对象。
参数
(无)
示例
运行此代码
#include <iostream> #include <fstream> int main() { std::filebuf* fbp = new std::filebuf; fbp->open("test.txt", std::ios_base::out); fbp->sputn("Hello\n", 6); std::streambuf* sbp = fbp; delete sbp; // 关闭文件,清除缓冲区并写入输出 std::ifstream f("test.txt"); std::cout << f.rdbuf(); // 证明 }
输出:
Hello
缺陷报告
下列更改行为的缺陷报告追溯地应用于以前出版的 C++ 标准。
缺陷报告 | 应用于 | 出版时的行为 | 正确行为 |
---|---|---|---|
LWG 54 | C++98 | 未指明此析构函数的效果 | 没有效果 |
参阅
构造 basic_streambuf 对象 (受保护成员函数) |