3. Using the C++ Compiler Options
6. Creating and Using Templates
9. Improving Program Performance
10. Building Multithreaded Programs
12. Using The C++ Standard Library
13. Using the Classic iostream Library
13.2 Basic Structure of iostream Interaction
13.3 Using the Classic iostream Library
13.3.1.1 Defining Your Own Insertion Operator
13.3.1.2 Handling Output Errors
13.3.3 Defining Your Own Extraction Operators
13.3.4 Using the char* Extractor
13.3.5 Reading Any Single Character
13.3.10 Using iostreams With stdio
13.4.1 Dealing With Files Using Class fstream
13.4.1.2 Declaring an fstream Without Specifying a File
13.4.1.3 Opening and Closing Files
13.4.1.4 Opening a File Using a File Descriptor
13.4.1.5 Repositioning Within a File
13.7.1 Using Plain Manipulators
13.7.2 Parameterized Manipulators
13.8 Strstreams: iostreams for Arrays
13.9 Stdiobufs: iostreams for stdio Files
13.10.1 Working With Streambufs
13.10.1.1 Position of Pointers
iostreams does not allow assignment of one stream to another.
The problem with copying a stream object is that there are then two versions of the state information, such as a pointer to the current write position within an output file, which can be changed independently. As a result, problems could occur.