Namespaces
Variants

std::basic_stringbuf<CharT,Traits,Allocator>:: init_buf_ptrs

From cppreference.net
void init_buf_ptrs ( ) ;
( 설명 전용* )

buf mode 에 따라 입력 및 출력 시퀀스를 초기화합니다. buf mode * this 설명 전용 데이터 멤버 입니다.

이 함수가 반환된 직후:

  • std::ios_base::out mode 에 설정되어 있으면, pbase() buf. front ( ) 를 가리키고, epptr ( ) >= pbase ( ) + buf. size ( ) true 입니다.
    • 추가로, std::ios_base::ate mode 에 설정되어 있으면, pptr ( ) == pbase ( ) + buf. size ( ) true 입니다.
    • 그렇지 않으면 pptr ( ) == pbase ( ) true 입니다.
  • std::ios_base::in mode 에 설정되어 있으면, eback() buf. front ( ) 를 가리키고, gptr ( ) == eback ( ) && egptr ( ) == eback ( ) + buf. size ( ) true 입니다.

참고 사항

효율성 이유로, 스트림 버퍼 연산은 buf std::basic_stringbuf 내에 캡슐화된 상태에서 해당 불변량을 위반할 수 있습니다. 예를 들어 [ buf. data ( ) + buf. size ( ) , buf. data ( ) + buf. capacity ( ) ) 범위 내 문자에 쓰는 경우가 있습니다.

std::basic_string buf 에서 가져오는 모든 연산은 반환된 값에 대해 std::basic_string 불변식이 유지되도록 보장합니다.

결함 보고서

다음의 동작 변경 결함 보고서들은 이전에 발표된 C++ 표준에 소급 적용되었습니다.

DR 적용 대상 게시된 동작 올바른 동작
LWG 1448 C++98 init_buf_ptrs () 호출 시
pptr ( ) == pbase ( ) + buf. data ( )
가 입력 및 출력 스트림 모두에 대해 설정됨
추가 모드 스트림에 대해
pptr ( ) == pbase ( ) + buf. size ( )
로 설정됨