Namespaces
Variants

std:: time_put

From cppreference.net
Definido en el encabezado <locale>
template <

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

> class time_put ;

La plantilla de clase std::time_put encapsula las reglas de formato de fecha y hora. El manipulador de E/S std::put_time utiliza la faceta std::time_put de la configuración regional del flujo de E/S para generar la representación textual de un objeto std::tm .

cpp/locale/time base cpp/locale/locale/facet std-time put-inheritance.svg

Diagrama de herencia

Si una especialización de std::time_put no está garantizada de ser proporcionada por la biblioteca estándar (ver abajo), los comportamientos de sus funciones put() y do_put() no están garantizados como se especifica.

Contenidos

Especializaciones

La biblioteca estándar garantiza proporcionar las siguientes especializaciones (están requeridas para ser implementadas por cualquier objeto locale ):

Definido en el encabezado <locale>
std :: time_put < char > crea representaciones de cadena estrecha de fecha y hora
std :: time_put < wchar_t > crea representaciones de cadena ancha de fecha y hora

Además, la biblioteca estándar también garantiza proporcionar cada especialización que cumpla con los siguientes requisitos de tipo:

Tipos anidados

Tipo Definición
char_type CharT
iter_type OutputIt

Miembros de datos

Miembro Descripción
std::locale::id id [static] el identificador del facet

Funciones miembro

construye un nuevo facet time_put
(función miembro pública)
destruye un facet time_put
(función miembro protegida)
invoca do_put
(función miembro pública)

Funciones miembro protegidas

[virtual]
formatea fecha/hora y escribe en el flujo de salida
(función miembro protegida virtual)

Ejemplo

#include <codecvt>
#include <ctime>
#include <iomanip>
#include <iostream>
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';
}

Salida:

水曜日 2011年11月09日 12時32分05秒

Véase también

representa el std::time_put proporcionado por el sistema para la configuración regional nombrada
(plantilla de clase)
analiza valores de fecha/hora desde una secuencia de caracteres de entrada hacia std::tm
(plantilla de clase)
(C++11)
formatea y genera un valor de fecha/hora de acuerdo al formato especificado
(plantilla de función)