The extraction operator (>>) is the most familiar means of getting bytes from an input stream object. This operator is preprogrammed for all the standard C++ data types, including integers, floating-point values, null-terminated strings, and so forth.
Formatted text input extraction operators depend on white space to separate incoming data values. This behavior is inconvenient when a text field contains multiple words or when numbers are separated by commas. One alternative is the use the unformatted input member function getline to read a block of text with white space included. The block can then be parsed with special-purpose functions. Another alternative is derivation of an input stream class with a member function such as GetNextToken. This special-purpose function could call istream member functions to extract and format character data.