streambuf, setg
의 세 가지 "gptrs"를 설정하는 basic_streambuf
멤버는 다음과 같이 선언됩니다.왜 const char_type *이 아닌 basic_streambuf char_type *의 "gptr"유형입니까?
protected:
void setg(char_type *gback, char_type *gptr, char_type *egptr);
왜 각 gptr 유형이 const char_type*
대신 char_type*
로 만들어 졌는지 궁금합니다. 이 gptrs에 const char 포인터를 사용하기 위해 여기 const_cast
을 사용하는 것이 안전합니까?
물론! :) 저는 현재 상수 C 문자열에 대해 streambuf를 작성 중이기 때문에 혼란 스러웠습니다. 내 목적을 위해 '언더 플로우'와 '유출'은 사용되지 않습니다. 바보 나. 정말 좋은 대답을 쓸 때도 +1합니다. –