En realidad, no estoy de acuerdo con la "respuesta aceptada". Es puramente incorrecto en el lado de Microsoft, y puede causar expectativas poco realistas. El estándar C++ 11 requiere system_clock
para implementar to_time_t
y from_time_t
, pero no existen tales requisitos para steady_clock
y high_resolution_clock
. No es una relación "is-a", ya que steady_clock
no implementa todas las interfaces requeridas de system_clock
; ni debería. La acción de Microsoft no tiene sentido para mí: ¿cómo se puede esperar que steady_clock
tenga to_time_t
mientras se evita el problema de la inclinación del tiempo?
En pocas palabras, Microsoft cometió un error y tardan en solucionarlo. Según Stephan T. Lavavej, "no tuvo tiempo de arreglar esto en 2013 RTM", y "todos los relojes deben ser reimplantados, como rastreado por varios errores activos". Ver https://connect.microsoft.com/VisualStudio/feedback/details/719443/.
Supongo que no fue él quien escribió la implementación de la basura falsa al principio.
EDIT: Estoy un poco sorprendido de que haya votado negativamente, incluso un poco molesto. Mis downvoters y desacuerdos, ¿te das cuenta de que estás racionalizando una implementación fallida, que puede ser cambiada y arreglada pronto? Llámame una implementación real que tiene steady_clock
hereda de system_clock
y no está rota ....
ACTUALIZACIÓN DE DATOS en julio de 2014: A partir de Visual Studio 2014 CTP2, steady_clock
ya no se hereda de system_clock
....
derecho, esto es herencia de interfaces, no la herencia de implementación (aunque por lo general en C++ es posible que tenga ambos). Y un reloj constante satisface la interfaz de un reloj inestable. –
@BenVoigt No creo que "un reloj estable satisfaga la interfaz de un reloj inestable". 'system_clock' admite' from_time_t' y 'to_time_t', que no son muy significativos para' steady_clock'. Y un 'steady_clock' o' high_resolution_clock' puede no ser compatible con el rango completo de 'time_t' (especialmente en plataformas de 32 bits). –
@YongweiWu: Estás confundiendo constante vs inestable con tiempo relativo vs absoluto. –