모두의 코드
C++ 레퍼런스 - ios::setstate 함수

작성일 : 2012-03-25 이 글은 3045 번 읽혔습니다.

아직 C++ 에 친숙하지 않다면 씹어먹는 C++ 은 어때요?

ios::setstate

void setstate(iostate state);

오류 상태 플래그를 설정한다. 인자로 전달된 오류 상태 플래그와 현재의 오류 상태 플래그를 합친다. (비트 OR 연산을 수행한다) 따라서 setstate 함수는 현재 이미 켜져 있는 오류 비트는 끌 수 없다. 만일, 켜져 있는 오류 비트를 끄고 싶다면 clear 함수를 이용하여 현재 설정된 오류 상태 플래그 값을 모두 지우고 사용자가 새롭게 설정할 수 있다.

이 함수는

clear(rdstate() | state);

를 하는 것과 동일하다고 볼 수 있다.

인자

state

ios_base::iostate 타입의 객체로 다음과 같은 멤버 상수들의 조합(비트 OR 연산) 으로 구성되어 있다.

플래그 값

의미

eofbit

스트림으로부터 추출 작업(extracting operation)을 수행 중 End Of File 에 도달하는 경우

failbit

마지막 입력 작업이 자체의 내부 오류 때문에 실패하였을 경우

badbit

스트림 버퍼의 입출력 작업이 실패하여 발생한 오류

goodbit

오류가 없다

리턴값

없다

템플릿 멤버 정의

(basic_ios<charT, traits>)void setstate(iostate state);

참고 자료

  • ios::fail : failbit 이나 badbit 이 설정되어 있는지 확인한다.

  • ios::bad : badbit 이 설정되어 있는지 확인한다.

  • ios::good: 스트림에 어떠한 오류 플래그도 설정되지 않았는지 확인한다.

  • ios::eof : eofbit 이 설정되어 있는지 확인한다.

  • ios::rdstate : 오류 상태 플래그를 얻는다.

  • ios::clear : 오류 상태 플래그를 설정한다.

첫 댓글을 달아주세요!
프로필 사진 없음
강좌에 관련 없이 궁금한 내용은 여기를 사용해주세요

    댓글을 불러오는 중입니다..