我被ofstream的那种混淆。 ofstream的从ostream的继承。 它也继承的方法“操作符<<”从ostream的。
ofstream x;
x << "hello world" << endl;
//cout << "hello world" << endl;
system("pause");
return 0;
上面的代码片段试图使用ofsream的一个目的是输出的“hello world”到正如COUT做的终端。
上面的代码片段可以编译,但说明不了什么。 为什么会发生?
谢谢,
这是一个很长的时间,但流的IIRC是OUTPUT_FILE流哪个流数据到一个打开的文件。 对于ofstream的对象实际打印你将不得不作出的终端打开它“的/ dev / console的”或类似的东西。 ofstream的的一个普通例子大概犯规打开/ dev / console的B / C你已经清点可用。
ofstream
为文件对象的抽象。 为了能够创建一个文件,你需要在文件名通过。 如果你不是一个默认ofstream
对象被创建(这就是为什么它编译)。 就其本身而言,这样的目标是没有多大用处。 尝试:
ofstream x( "out.txt" );
x << "hello world" << endl;
...
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.