Stimuler.Chrono vs coup de pouce.Date Heure

Avec Boost Version 1.47, la bibliothèque Chrono a été introduite. Est Coup De Pouce.Chrono signifiait comme un remplacement pour Boost.Date_Time?

Sinon, quelles sont les différences entre eux et Quand dois-je utiliser qui?

Quand devrais-je envisager de remplacer Boost.Date_Time par Boost.Chrono dans un projet existant?

32
demandé sur Robert Hegner 2011-07-18 12:39:48

1 réponses

De Boost.Documentation de Chrono:

Coup de pouce.Chrono vise à mettre en œuvre les nouvelles installations de temps en C++0x, comme proposé dans N2661-une fondation pour dormir sur. Ce document fournit le contexte et la motivation pour les décisions clés de conception et est la source d'une bonne partie de l'information dans cette documentation.

Plus précisément, Boost.DateTime est sur, bien, dates et heures. Il a beaucoup de fonctions pour le formatage des dates pour l'affichage en fonction des paramètres régionaux et divers d'autres choses. Mais il existe également des fonctions pour obtenir des dates et des heures, ainsi que pour les utiliser.

Coup de pouce.Chrono semble concentré sur le traitement des intervalles de temps. Il n'a pas de mesure supérieure à "heures", et il n'a pas de concept de date du tout. En effet, les moments dans le temps ne sont pris en charge que comme décalages à un moment particulier dans le temps (temps depuis le début du processus, temps depuis une "époque" fixe comme le 1er janvier 1970, etc.).

Les deux semblent complémentaires, plutôt que concurrents, bien qu'il y ait certains se chevauchent. Il y a beaucoup de choses que DateTime fait que Chrono ne fait pas, et il y a certaines choses que Chrono fait que DateTime ne fait pas. malheureusement, il ne semble pas y avoir d'interop entre les deux, donc il faudra convertir à la main les durées de Chrono en équivalent de type de date.

40
répondu Nicol Bolas 2012-09-11 12:43:36