Constructing Input Stream Objects
If you use only the cin object, you do not need to construct an input stream. You must construct an input stream if you use:
Input File Stream Constructors
Input String Stream Constructors
Input File Stream Constructors
There are two ways to create an input file stream:
Use the void argument constructor, then call the open member function:
ifstream myFile; // On the stack myFile.open( "filename" ); ifstream* pmyFile = new ifstream; // On the heap pmyFile->open( "filename" );
Specify a filename and mode flags in the constructor invocation, thereby opening the file during the construction process:
ifstream myFile( "filename" );
Input String Stream Constructors
Input string stream constructors require the address of preallocated, preinitialized storage:
string s("123.45");
double amt;
istringstream myString( s );
//istringstream myString( "123.45" ) also works
myString >> amt; // amt contains 123.45