template <class data-type> return-type name( parameter-list ) { statement-list; }
Templates are used to create generic functions and can operate on data without knowing the nature of that data. They accomplish this by using a placeholder data-type for which many other data types can be substituted.