Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
std::time_put(3)	      C++ Standard Libary	      std::time_put(3)

NAME
       std::time_put - std::time_put

Synopsis
	  Defined in header <locale>
	  template<

	  class	CharT,
	  class	OutputIt = std::ostreambuf_iterator<CharT>

	  > class time_put;

	  Class	 template  std::time_put encapsulates date and time formatting
       rules. The I/O
	  manipulator std::put_time uses the std::time_put facet  of  the  I/O
       stream's	locale to
	  generate text	representation of an std::tm object.

	  std-time put-inheritance.svg

					  Inheritance diagram

Type requirements
	  -
	  OutputIt must	meet the requirements of LegacyOutputIterator.

Specializations
	  Two  standalone  (locale-independent)	 full  specializations and two
       partial
	  specializations are provided by the standard library:

	  Defined in header <locale>
	  std::time_put<char>		   creates narrow  string  representa-
       tions of	date and
					   time
	  std::time_put<wchar_t>	   creates wide	string representations
       of date and
					   time
	  std::time_put<char,  OutputIt>     creates narrow string representa-
       tions of	date and
					   time	using custom output iterator
	  std::time_put<wchar_t, OutputIt> creates wide	string representations
       of date and
					   time	using custom output iterator

	  In addition, every locale object constructed in a C++	program	imple-
       ments its own
	  (locale-specific) versions of	these specializations.

Member types
	  Member type Definition
	  char_type   CharT
	  iter_type   OutputIt

Member functions
	  constructor	constructs a new time_put facet
			(public	member function)
	  destructor	destructs a time_put facet
			(protected member function)
	  put		invokes	do_put
			(public	member function)

Member objects
	  static std::locale::id id id of the locale
				    (public member object)

Protected member functions
	  do_put    formats date/time and writes to output stream
	  [virtual] (virtual protected member function)

Example
       // Run this code

	#include <iostream>
	#include <ctime>
	#include <iomanip>
	#include <codecvt>

	int main()
	{
	    std::time_t	t = std::time(nullptr);
	    std::wbuffer_convert<std::codecvt_utf8<wchar_t>>
       conv(std::cout.rdbuf());
	    std::wostream out(&conv);
	    out.imbue(std::locale("ja_JP.utf8"));
	    // this I/O	manipulator std::put_time uses std::time_put<wchar_t>
	    out	<< std::put_time(std::localtime(&t), L"%A %c") << '\n';
	}

Output:
	 20111109 123205

See also
	  time_put_byname represents the system-supplied std::time_put for the
       named locale
			  (class template)
			  parses time/date values from an input	character  se-
       quence into struct
	  time_get	  std::tm
			  (class template)
	  put_time	   formats  and	outputs	a date/time value according to
       the specified
	  (C++11)	  format
			  (function template)

http://cppreference.com		  2022.07.31		      std::time_put(3)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=std::time_put&sektion=3&manpath=FreeBSD+Ports+15.0>

home | help