What is the difference between:
fstream texfile;
textfile.open(\"Test.txt\");
and
ofstream textfile;
textfile.open(\"Test.t
Take a look at their pages on cplusplus.com here and here.
ofstream
inherits from ostream
. fstream
inherits from iostream
, which inherits from both istream
and stream
. Generally ofstream
only supports output operations (i.e. textfile << "hello"), while fstream
supports both output and input operations but depending on the flags given when opening the file. In your example, the open mode is ios_base::in | ios_base::out
by default. The default open mode of ofstream
is ios_base::out
. Moreover, ios_base::out
is always set for ofstream objects (even if explicitly not set in argument mode).
Use ofstream
when textfile
is for output only, ifstream
for input only, fstream
for both input and output. This makes your intention more obvious.