Time format von c++ nach c#
-
@booster sagte in Time format von c++ nach c#:
ja, und was macht time_since_epoch()?
Das gibt die Anzahl der "Ticks" seit der epoch an.
Wobei die "Ticks" nicht unbedingt Sekunden sind. Das hängt von deiner time_point-Genauigkeit ab.Beispiel:
auto n = chrono::system_clock::now() (std::chrono::time_point<std::chrono::system_clock, std::chrono::duration<long, std::ratio<1, 1000000000> > > &) @0x7f714c619010 n.time_since_epoch().count() (long) 1550837538050613745 // In der Einheit std::ratio<1, 1000000000>, also 1 ns auto h = std::chrono::time_point_cast<std::chrono::hours>(n) (std::chrono::time_point<std::chrono::system_clock, std::chrono::duration<long, std::ratio<3600, 1> > > &) @0x7f714c619018 h.time_since_epoch().count() (long) 430788 // in der Einheit std::ratio<3600, 1>, also 3600 Sekunden, also 1 Stunde
time_since_epoch().count()
ist also nur dann in Sekunden (seit 1970*), wenn du als Duration-Einheit die Sekunde hast.* nur per Konvention, nicht vom Standard garantiert