template <class charT, class OutputIterator = ostreambuf_iterator<charT> > class num_put;
Facet to format numeric values
The num_put standard facet formats numeric values as sequences of characters. Its member put is called by standard output streams (such as ostream) to format numerical values inserted with the insertion operator (operator<<).
The num_put class template has a protected destructor: Programs shall only construct objects of derived classes, or use those installed in locale objects (through use_facet).
All standard locale objects support at least the following facet instantiations of the num_put class template (as part of the numeric category):
|facets in locale objects||notes|
|narrow characters (used by ostream)|
|wide characters (used by wostream)|
- Character type: the type of the characters in the sequence to write.
Aliased as member char_type.
- Output iterator type that points to the elements in the character sequence to write.
Defaults to ostreambuf_iterator, which is an iterator that can be implicitly converted from basic_ostream objects.
Aliased as member iter_type.
|char_type||The first template parameter (charT)||Character type|
|iter_type||The second template parameter (OutputIterator)||Iterator type.|
The class contains a public static constant of type locale::id that uniquely identifies facets with num_put semantics.
Public member functions
- num_put constructor (public member function)
- Put numerical value (public member function)
Virtual protected member functions
- Put numerical value [virtual] (protected virtual member function)
- num_put destructor (protected member function)
At least the following specializations and partial specializations of this template are provided in all library implementations:
template <class OutputIterator> num_put<char,OutputIterator>
template <class OutputIterator> num_put<wchar_t,OutputIterator>
Where OutputIterator shall be a type that satisfies the requirements of an output iterator able to iterate over elements of the specified character type.