Safari Books Online is a digital library providing on-demand subscription access to thousands of learning resources.
The C++ standard library overloads the input operator >> and the output operator << for all built-in classes. Obviously, these operators do not know anything about programmer-defined classes. This is why when you need to input or output object data, you have to do this individually for each data member of the object.
It would be nice to overload the input/output operators for programmer-defined classes as well. Encapsulating these operations in overloaded operators would contribute to streamlining the client code, to eliminating low-level details of data management from the client code, and to pushing responsibility from client code to server classes.