C++ Programming: Language Standard Headers

From Wikibooks, open books for an open world
Jump to: navigation, search

Standard Headers[edit]

Standard Template Library

and the

Standard C Library
  1. a b c d e f g h i j k l m n o p q r s t u v In C++11 only

Everything inside C++'s standard library is kept in the std:: namespace.

Old compilers may include headers with a .h suffix (e.g. the non-standard <iostream.h> vs. the standard <iostream>) instead of the standard headers. These names were common before the standardization of C++ and some compilers still include these headers for backwards compatibility. Rather than using the std:: namespace, these older headers pollute the global namespace and may otherwise only implement the standard in a limited way.

Some vendors use the SGI STL headers. This was the first implementation of the standard template library.

Non-standard but somewhat common C++ libraries
  1. Streams based on FILE* from stdio.h.
  2. Precursor to iostream. Old stream library mostly included for backwards compatibility even with old compilers.
  3. Uses char* whereas sstream uses string. Prefer the standard library sstream.