ifstream 읽기 루프

읽기 루프는 성공한 값만 처리하고, 끝난 이유는 뒤에서 해석한다

`while (inFile >> value)`는 EOF를 미리 예측하지 않습니다. 읽기 시도가 성공하면 처리하고, 실패하면 루프 뒤에서 이유를 구분합니다.

루프 안에서 일어나는 일
읽기 시도inFile >> value다음 토큰을 원하는 타입으로 변환해 봅니다.
성공한 경우true루프 본문에서 값 하나를 안전하게 처리합니다.
다음 반복while다음 읽기를 다시 시도합니다.
eof()정상 종료더 읽을 데이터가 없어 끝났습니다. 마지막 값 처리는 이미 루프 안에서 끝났습니다.
fail()형식 오류숫자 자리에 문자열처럼 변환할 수 없는 데이터가 있어 종료했습니다.
bad()심각한 I/O 오류파일 손상이나 장치 오류처럼 별도 대응이 필요한 상황입니다.
좋은 읽기 루프는 EOF를 먼저 검사하지 않고, 읽기 성공으로 반복을 결정한 뒤 종료 이유를 해석합니다.