Chrono - La différence entre deux points dans le temps en millisecondes?
Comment puis-je obtenir (à l'aide de la std::chrono bibliothèque) la différence entre deux points dans le temps en millisecondes?
Je pouvais le faire en utilisant ceci:
std::chrono::time_point<std::chrono::system_clock> now = std::chrono::system_clock::now();
std::chrono::time_point<std::chrono::system_clock> foo = now + std::chrono::milliseconds(100);
std::chrono::duration<float> difference = foo - now;
const int milliseconds = difference.count() * 1000;
Comment puis-je obtenir ce temps, en millisecondes, donc je peux l'utiliser pendant la durée d'un unsigned int, et non pas d'un flotteur et ensuite multiplier par 1000?
M'a fallu cinq secondes pour google ce :
il m'a fallu 2 secondes. google m'a amené ici pour votre réponse.
chrono::duration_cast<chrono::milliseconds>(end_time - start_time).count()
il m'a fallu 2 secondes. google m'a amené ici pour votre réponse.
OriginalL'auteur waas1919 | 2015-07-27
Vous devez vous connecter pour publier un commentaire.
std::chrono::durée
a deux paramètres du modèle, le second étant exactement la même unité de mesure. Vous pouvez appelerstd::chrono::duration_cast
à la fonte d'une durée de type à l'autre. Aussi, il y a une durée prédéfinie type de millisecondes:std::chrono::millisecondes
. La composition de cet ensemble:Pour obtenir le nombre réel de millisecondes, l'utilisation
durée::count
:Son type de retour est
duration::rep
, qui pour la durée standard des types commestd::chrono::milliseconds
est un nombre entier signé de taille quelconque.OriginalL'auteur lisyarus
OriginalL'auteur zoska
http://www.cplusplus.com/reference/chrono/duration_cast/
OriginalL'auteur johnjohnlys
J'ai eu des problèmes avec la durée de l'impression avec des lettres comme l'e-09. Voici comment je l'ai corrigé:
Et maintenant je obtenir résultats souhaités:
OriginalL'auteur AceFunk