조작자 대 형식 개체
문자열 스트림을 구성하려고 시도하는 동안 std::setw()의 동작과 관련하여 일반적인 오해가 발생합니다. . 문자열 스트림에 영구적으로 영향을 미칠 것이라고 가정하는 것은 삽입할 때마다 재설정되므로 잘못된 가정이었습니다. 이 글의 목적은 다음 질문에 답하면서 고정 조작자와 비고정 조작자와 형식 객체 간의 차이를 명확히 하는 것입니다.
고정 조작기
std::ios_base 내의 조작기는 두 가지 범주로 분류할 수 있습니다.
형식 개체
형식 개체는 스트림의 형식 지정 속성을 일시적으로 변경하는 데 사용됩니다. 조작자와 달리 스트림 개체에 직접 영향을 주지 않습니다. 이에 대한 예는 영구 상태에 영향을 주지 않고 형식을 임시로 수정할 수 있는 PutSquareBracket 형식 개체입니다.
결론
std::setw()는 고유합니다. 조작자 중에서 유일하게 끈적이지 않는 것입니다. 특정 동작에 관한 문서가 부족한 것은 다른 조작자와 유사하다고 인식되었기 때문일 수 있습니다. 그러나 실제로는 너비를 명시적으로 0으로 설정해야 하는 형식화된 출력 작업의 요구 사항으로 인해 다르게 동작합니다.
위 내용은 std::setw() 및 Stringstreams: 고정 조작기와 비고착 조작기 - 차이점은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!