std::basic_streambuf<CharT,Traits>:: ~basic_streambuf
From cppreference.net
<
cpp
|
io
|
basic streambuf
C++
Input/output library
| I/O manipulators | ||||
| Print functions (C++23) | ||||
| C-style I/O | ||||
| Buffers | ||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(C++20)
|
||||
| Streams | ||||
| Abstractions | ||||
| File I/O | ||||
| String I/O | ||||
| Array I/O | ||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(C++23)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
|
(
C++98/26*
)
|
||||
| Synchronized Output | ||||
|
(C++20)
|
||||
| Types | ||||
| Error category interface | ||||
|
(C++11)
|
||||
|
(C++11)
|
std::basic_streambuf
|
|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
|
virtual
~basic_streambuf
(
)
;
|
||
이 소멸자는 아무런 효과가 없습니다: 이
basic_streambuf
의 멤버들(포인터들과 locale)은 이 소멸자가 반환된 후 일반적인 객체 소멸 순서에 따라 소멸됩니다. 그러나 public virtual로 선언되었기 때문에,
std::basic_streambuf
에서 파생된 객체들이 기본 클래스 포인터를 통해 삭제될 수 있도록 합니다.
목차 |
매개변수
(없음)
예제
이 코드 실행
#include <fstream> #include <iostream> 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++ 표준에 소급 적용되었습니다.
| DR | 적용 대상 | 게시된 동작 | 올바른 동작 |
|---|---|---|---|
| LWG 54 | C++98 | 소멸자의 효과가 명시되지 않음 | 효과 없음으로 명시 |
참고 항목
basic_streambuf
객체를 생성합니다
(protected 멤버 함수) |