Salut!
std::chrono étant très pratique et plus précise que SFML, mais bien plus complexe à utiliser, j'ai décidé de créer mes propres classes Time et Chrono, après tout cela ne peut être que bénéfique.
Cependant il y a encore un point qui me chagrine, je souhaiterai créer un "time point" à partir d'une duration arbitraire, j'ai vu que il est possible de créer n'importe quel type de duration exprimée de n'importe quelle façon. (grâce à std::ratio)
Cependant, quand j'essaye de la convertir en un "time point" j'ai une erreur de compilation, je suis obligé à chaque fois d'utilise std::chrono::seconds sinon ça ne compile pas donc ce code compile :
Code cpp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 Time seconds (long int amount) { Time time; time.time = std::chrono::time_point<std::chrono::high_resolution_clock>(std::chrono::seconds(amount)); return time; }
Par contre celui-ci ne compile pas!
Code cpp : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7 Time seconds (float amount) { Time time; std::chrono::duration<float, std::ratio<1, 1000000>> dur (amount); time.time = std::chrono::time_point<std::chrono::high_resolution_clock, std::chrono::duration<float, std::ratio<1, 1000000>>>(dur); return time; }
Faut t'il faire un cast ou quelque chose du genre ?
Merci d'avance pour l'aide.
Partager