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