std::basic_stringbuf<CharT,Traits,Allocator>:: init_buf_ptrs
|
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 ( ) 로 설정됨 |