2012-06-01 3 views
0

나는 작업중인 C++ 코드로 이상하게 보입니다. 그것은 내가 파일에서 필요로하는 데이터를 가지기 위해 만든 "ofstream"객체에 관한 것입니다.of if가 작동하지 않는 if 객체 다음에

어쨌든이 객체를 배치해야합니다.이 객체는 "if"조건 뒤에 output1이라고 부릅니다. 그래서, 파일에서 원하는 조건을 통과하는 모든 데이터. 나는 조건 후 보통 "cout을"을 넣으면

이제 :

. 
. 
if (Check == 0) cout << data1 << " " << data2 << endl; 
. 

나는 결과를 화면에 출력거야.

내 출력 1을 넣을 때,

if (Check == 0) output1 << data1 << " " << data2 << endl; 

후 아무것도 파일에 기록되지 않습니다!

내 output1 개체가 코드의 다른 곳에서 제대로 작동하는지 확인했습니다. 그러나 여기! 그리고 complier는 어떤 오류 또는 선언 부족을 언급하지 않았다.

아이디어가 있으십니까?

참고 : 코드를 여기에 넣거나 관련 부분을 매우 긴 코드로 공개 할 수 없으므로 복사 할 권한이 없습니다.

+0

감사합니다. downvote! 그건 그렇고, 나는 복잡한 코드 작업을 강요당하는 프로그래밍 초보자에 불과합니다! – stupidity

답변

2

내 수정 구슬은 두 개의 다른 개체가 모두 output1이라는 것을 알려줍니다.

if 문은 문제에 영향을주지 않습니다.

+0

좋아, 두 가지가 있는지 확인해 보겠습니다. 감사! – stupidity

+0

예, 맞습니다. 원본 프로그램은 비슷한 이름으로 정의되었습니다! – stupidity

2

이 완벽하게 맞으면

출력 스트림을 플러시하고 출력 스트림을 닫는 것을 잊어 버리시겠습니까?

또는 나중에 스트림을 다시여시겠습니까?

또는 여러 개의 출력 1을 사용 하시겠습니까?

코드 조각이 많을수록 구체적인 답변이 더 많습니다. 답변

+0

마지막 "return 0;"사이의 출력을 닫았습니다. 성명서와 프로그램의 마지막 "}"; 이것이 그 곳입니까? – stupidity

+0

귀하의 의견은 사물을 명확하게하지 않습니다. –

+0

실례합니다. 문제는 앞에서 언급했듯이 output1이 코드에서 두 번 정의되었다는 것입니다. 이 문제를 해결했을 때 모든 것이 잘 돌아갔습니다. 건배 – stupidity

관련 문제