std::basic_ios<CharT,Traits>:: rdbuf
From cppreference.net
|
std::
basic_streambuf
<
CharT, Traits
>
*
rdbuf
(
)
const
;
|
(1) | |
|
std::
basic_streambuf
<
CharT, Traits
>
*
rdbuf
(
std::
basic_streambuf
<
CharT, Traits
>
*
sb
)
;
|
(2) | |
관련 스트림 버퍼를 관리합니다.
1)
연결된 스트림 버퍼를 반환합니다. 연결된 스트림 버퍼가 없는 경우 널 포인터를 반환합니다.
2)
연결된 스트림 버퍼를
sb
로 설정합니다. 오류 상태는
clear()
를 호출하여 지워집니다. 작업 전의 연결된 스트림 버퍼를 반환합니다. 연결된 스트림 버퍼가 없는 경우 널 포인터를 반환합니다.
목차 |
매개변수
| sb | - | 연결할 스트림 버퍼. |
반환값
연결된 스트림 버퍼, 또는 연결된 스트림 버퍼가 없었던 경우 널 포인터.
예외
구현 정의 예외를 던질 수 있습니다.
예제
이 코드 실행
#include <iostream> #include <sstream> int main() { std::ostringstream local; auto cout_buff = std::cout.rdbuf(); // std::cout 버퍼에 대한 포인터 저장 std::cout.rdbuf(local.rdbuf()); // 내부 std::cout 버퍼를 // 'local' 객체의 버퍼로 대체 // 이제 std::cout은 'local' 버퍼와 함께 동작 // 이 메시지는 보이지 않음 std::cout << "some message"; // 이전 버퍼로 복귀 std::cout.rdbuf(cout_buff); // 이 메시지는 보임 std::cout << "back to default buffer\n"; // 'local' 내용 출력 std::cout << "local content: " << local.str() << "\n"; }
출력:
back to default buffer local content: some message
참고 항목
rdbuf
를 대체하며 오류 상태를 지우지 않음
(보호된 멤버 함수) |