파일에서 공백으로 구분 된 단어 단위로 단어를 읽으려는 응용 프로그램이 있습니다. 이 줄에 따라 코드를 사용하고 있습니다.내 자신의 iostream 유틸리티 클래스 작성 : 좋은 생각인가요?
std::istream in;
string word;
while (in.good()) {
in>>word;
// Processing, etc.
...
}
제 문제는 단어 자체에 대한 처리는 실제로 다소 가벼운 것입니다. 주요 고객은 내가 실행하는 mySQL 쿼리 세트입니다.
내가 생각했던 것은 파일에서 킬로바이트와 같은 것을 읽고, 문자열 스트림을 버퍼로 초기화하며, 많은 IO 작업을 피하기 위해 투명하게 추출을 수행하는 버퍼링 된 클래스를 작성하는 것입니다.
생각과 조언?
'istream_iterator'을 (를) 찾고 있습니다. BTW,'.good() 테스트는 잘못된 것을합니다. 'in >> word' 자체를 확인하고 싶습니다. –
고맙습니다. 또한, 파일의 끝까지 읽었으므로 일단 끝나면 좋은() eof를 반환하지 않아야합니까? – Alex
내가 실수하지 않는다면 입력이 공백으로 끝나는 지 아닌지에 달려 있습니다. 'while (in >> word)'두 경우 모두에서 작동합니다. – UncleBens