Namespaces
Variants

std::basic_ios<CharT,Traits>:: bad

From cppreference.net
bool bad ( ) const ;

연관된 스트림에서 복구 불가능한 오류가 발생한 경우 true 를 반환합니다. 구체적으로, true 를 반환하는 경우는 badbit rdstate ( ) 에 설정된 경우입니다.

ios_base::iostate 가 설정되는 조건 목록은 badbit 을 참조하십시오.

목차

매개변수

(없음)

반환값

true 복구 불가능한 오류가 발생한 경우, false 그 외의 경우.

예제

#include <cstdlib>
#include <fstream>
#include <iostream>
int main()
{
    std::ifstream file("test.txt");
    if (!file) // operator! is used here
    {  
        std::cout << "파일 열기 실패\n";
        return EXIT_FAILURE;
    }
    // typical C++ I/O loop uses the return value of the I/O function
    // as the loop controlling condition, operator bool() is used here
    for (int n; file >> n;)
       std::cout << n << ' ';
    std::cout << '\n';
    if (file.bad())
        std::cout << "읽기 중 I/O 오류 발생\n";
    else if (file.eof())
        std::cout << "파일 끝에 성공적으로 도달함\n";
    else if (file.fail())
        std::cout << "정수가 아닌 데이터 발견\n";
}

참고 항목

다음 표는 모든 가능한 basic_ios 접근자들( good() , fail() 등)의 값이 ios_base::iostate 플래그들의 모든 조합에 대해 어떻게 나타나는지 보여줍니다:

ios_base::iostate 플래그 basic_ios 접근자
eofbit failbit badbit good() fail() bad() eof() operator bool operator!
false false false true false false false true false
거짓 거짓 거짓 거짓 거짓
거짓 거짓 거짓 거짓 거짓 거짓
거짓 거짓 거짓 거짓
거짓 거짓 거짓 거짓 거짓 거짓
거짓 거짓 거짓
거짓 거짓 거짓 거짓
거짓 거짓