0

作業中のC++コードで何か奇妙なことに直面しています。これは、必要なデータをファイルに保存するために作成した「ofstream」オブジェクトに関するものです。

とにかく、このオブジェクトを配置する必要があります。これは、「if」条件の後にoutput1と呼ばれます。したがって、ファイル内で必要な条件を通過するデータ。

さて、条件の後に通常の「cout」を置くと、次のようになります。

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

結果が画面に表示されます。

しかし、出力を入れると1

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

その後、ファイルには何も書き込まれません!

output1オブジェクトがコード内のどこかで正常に機能することを確認しました。しかし、ここではありません!そして、コンパイラーはエラーや宣言の欠如について言及していませんでした。

何か案は?

注:コードは非常に長いコードであり、公開することを目的としていないため、ここにコードを配置することはできません。また、関連する部分を配置することもできません。そのため、コードをコピーする権利はありません。

4

2 に答える 2

2

私の水晶玉は、両方ともという名前の2つの異なるオブジェクトがあることを示していますoutput1

このif声明は間違いなく問題に影響を与えません。

于 2012-06-01T14:15:30.280 に答える
2

あなたの場合は完全に大丈夫です。

出力ストリームをフラッシュして閉じるのを忘れた可能性がありますか?

または、後でストリームを再開しますか?

または、複数のoutput1を使用しますか?

したがって、コードフラグメントが多いほど、より具体的な回答が得られます。

于 2012-06-01T14:32:16.973 に答える