1

私はオフストリームにちょっと混乱しています。ostream から継承された ofstream。また、ostream からメソッド "operator<<" を継承しています。

    ofstream x;
    x << "hello world" << endl;
     //cout << "hello world" << endl;

    system("pause");
    return 0;

上記のコード クリップは、ofsream のオブジェクトを使用して、cout と同じように「hello world」を端末に出力しようとしています。

上記のコード クリップはコンパイルできますが、何も表示されません。なぜそれが起こるのですか?

ありがとう、

4

3 に答える 3

2

ofstreamファイルオブジェクトの抽象化です。ファイルを作成できるようにするには、ファイルの名前を渡す必要があります。そうしないと、デフォルトのofstreamオブジェクトが作成されます(これがコンパイルされる理由です)。それ自体では、そのようなオブジェクトはあまり役に立ちません。試す:

ofstream x( "out.txt" );
x << "hello world" << endl;

...
于 2012-06-16T04:47:11.453 に答える
0

久しぶりですが、ストリームのIIRCは、開いているファイルにデータをストリーミングするoutput_file-streamです。ofstreamオブジェクトを実際に端末に出力するには、「/ dev/console」などを開く必要があります。ofstreamのプレーンインスタンスは、おそらくすでにcoutを使用できる/ dev / console b/cを開きません。

于 2012-06-16T04:50:14.453 に答える
-1

http://en.wikipedia.org/wiki/Input/output_%28C%2B%2B%29

<iostream> contains the definition of basic_iostream class template, 
which implements formatted input and output
<fstream> contains the definitions of basic_ifstream, basic_ofstream and 
basic_fstream class templates which implement formatted input, output and input/output
on file streams.
于 2012-06-16T05:15:05.793 に答える