2013-02-03 3 views

답변

3

std::endl IO 조작기는 스트림 버퍼이므로으로 변경해야합니다.나중에 해당 내용이 플러시되기 전에 스트림을 처리하려는 경우

실제로이 작업을 수행하려는 이유는 서식을 지정하여 작성하려는 문자열을 조작해야하기 때문이며 std::ostringstream을 사용할 수 있다는 사실을 사용자에게 알려야합니다. 형식화 된 스트리밍의 기능을 활용하고 문자열로 결과를 수집 한 다음 조작하여 일반적으로 파일에 쓸 수 있습니다.

이 정보가 분명하고 유스 케이스가 더 복잡한 경우 @MatsPetersson이 지적한대로 자체 스트림 버퍼를 작성해야합니다.

2

편집 :. 당신이 토론 myfilebuf의 목적을 위해 (filebuf에서 파생 된 클래스를 만들고 위보다 더 정확하다, ostream를 구성 할 것을 사용해야 myfilebuf 당신이 sputbackc을 구현에서

하고, "Hello, World!"를 식별하고 "Hello, Money!"로 바꾸려면 statemachine을 사용하고 어떤 것을 알기 전까지는 두 번째 레이어를 버퍼링하는 것이 좋습니다.

관련 문제