steady_clock c++ gcc c++11 std chrono

c++ - steady_clock - std:: put_time estado de implementación en GCC?



chrono en c++ (2)

¡Habrás notado que el enlace que diste no incluye ninguna parte de la biblioteca! Pero debajo de la mesa dice:

El estado de la implementación de la biblioteca se puede rastrear en esta table

Esa tabla indica que los manipuladores std::get_time y std::put_time aún no están implementados.

Editar: put_time ahora está en el tronco de desarrollo de GCC.

Estaba intentando compilar este programa de ejemplo usando GCC (versiones probadas 4.5.1, 4.6.3, 4.8.4):

#include <iostream> #include <iomanip> #include <ctime> #include <chrono> using std::chrono::system_clock; int main() { system_clock::time_point now = system_clock::now(); std::time_t now_c = system_clock::to_time_t( now - std::chrono::hours(24)); std::cout << "One day ago, the time was " << std::put_time(std::localtime(&now_c), "%F %T") << ''/n''; }

Pero me dice:

prog.cpp: In function ''int main()'': prog.cpp:14:18: error: ''put_time'' is not a member of ''std''

Pensé, probablemente aún no está implementado. Así que traté de verificar el estado de implementación de esta función. Solo encontré esta página:

pero no pude encontrar ninguna nota sobre put_time o chrono o similar. ¿Alguien puede indicarme un recurso que proporciona información sobre el estado de implementación de esta biblioteca?


Ver TODO manipuladores de iomanip extendidos std :: get_time y std :: put_time para gcc 4.8.0.

Consulte también la forma de la plataforma cruzada para obtener la hora del día? afirmando que no está implementado en 4.7.0.

ACTUALIZACIÓN: Como el desarrollador de gcc Jonathan Wakely confirmó a continuación: Los manipuladores std::get_time y std::put_time todavía faltan en gcc 4.9.

ACTUALIZACIÓN: Jonathan Wakely closed este boleto el 22 de diciembre de 2014:

Solucionado para GCC 5

Gracias simonwo por dejarme saber al respecto.