La classe CTimeSpan
Durée, qui est stockée en interne en tant que nombre de secondes dans l’intervalle de temps.
Syntaxe
class CTimeSpan
Membres
Constructeurs publics
Nom | Description |
---|---|
CTimeSpan::CTimeSpan |
Construit des CTimeSpan objets de différentes façons. |
Méthodes publiques
Nom | Description |
---|---|
CTimeSpan::Format |
Convertit une CTimeSpan chaîne mise en forme. |
CTimeSpan::GetDays |
Retourne une valeur qui représente le nombre de jours complets dans ce CTimeSpan . |
CTimeSpan::GetHours |
Retourne une valeur qui représente le nombre d’heures dans le jour actuel (-23 à 23). |
CTimeSpan::GetMinutes |
Retourne une valeur qui représente le nombre de minutes dans l’heure actuelle (-59 à 59). |
CTimeSpan::GetSeconds |
Retourne une valeur qui représente le nombre de secondes dans la minute actuelle (-59 à 59). |
CTimeSpan::GetTimeSpan |
Retourne la valeur de l’objet CTimeSpan . |
CTimeSpan::GetTotalHours |
Retourne une valeur qui représente le nombre total d’heures complètes dans ce CTimeSpan . |
CTimeSpan::GetTotalMinutes |
Retourne une valeur qui représente le nombre total de minutes complètes dans ce CTimeSpan . |
CTimeSpan::GetTotalSeconds |
Retourne une valeur qui représente le nombre total de secondes complètes dans ce CTimeSpan . |
CTimeSpan::Serialize64 |
Sérialise les données vers ou à partir d’une archive. |
Opérateurs
Nom | Description |
---|---|
operator + - |
Ajoute et soustrait des CTimeSpan objets. |
operator += -= |
Ajoute et soustrait un CTimeSpan objet vers et à partir de ce CTimeSpan . |
operator == < etc. |
Compare deux valeurs de temps relatives. |
Notes
CTimeSpan
n’a pas de classe de base.
CTimeSpan
les fonctions convertissent les secondes en différentes combinaisons de jours, d’heures, de minutes et de secondes.
L’objet CTimeSpan
est stocké dans une __time64_t
structure, qui est de 8 octets.
Une classe compagnon, , CTime
représente un temps absolu.
Les CTime
classes et CTimeSpan
les classes ne sont pas conçues pour la dérivation. Étant donné qu’il n’existe aucune fonction virtuelle, la taille des deux CTime
et CTimeSpan
des objets est exactement de 8 octets. La plupart des fonctions membres sont inline.
Pour plus d’informations sur l’utilisationCTimeSpan
, consultez les articles Date et Heure et Gestion de l’heure dans la référence de la bibliothèque d’exécution.
Spécifications
En-tête : atltime.h
CTimeSpan
Opérateurs de comparaison
Opérateurs de comparaison.
bool operator==(CTimeSpan span) const throw();
bool operator!=(CTimeSpan span) const throw();
bool operator<(CTimeSpan span) const throw();
bool operator>(CTimeSpan span) const throw();
bool operator<=(CTimeSpan span) const throw();
bool operator>=(CTimeSpan span) const throw();
Paramètres
span
Objet à comparer.
Valeur de retour
Ces opérateurs comparent deux valeurs de temps relatives. Ils retournent TRUE
si la condition est vraie ; sinon FALSE
.
Exemple
CTimeSpan ts1(100);
CTimeSpan ts2(110);
ATLASSERT((ts1 != ts2) && (ts1 < ts2) && (ts1 <= ts2));
CTimeSpan::CTimeSpan
Construit des CTimeSpan
objets de différentes façons.
CTimeSpan() throw();
CTimeSpan(__time64_t time) throw();
CTimeSpan(
LONG lDays,
int nHours,
int nMins,
int nSecs) throw();
Paramètres
timeSpanSrc
Objet CTimeSpan
qui existe déjà.
time
Valeur __time64_t
de temps, qui correspond au nombre de secondes dans l’intervalle de temps.
lDays
, , nHours
nMins
, ,nSecs
Jours, heures, minutes et secondes, respectivement.
Notes
Tous ces constructeurs créent un CTimeSpan
objet initialisé avec l’heure relative spécifiée. Chaque constructeur est décrit ci-dessous :
CTimeSpan( );
Construit un objet non initialiséCTimeSpan
.CTimeSpan( const CTimeSpan& );
Construit unCTimeSpan
objet à partir d’une autreCTimeSpan
valeur.CTimeSpan( __time64_t );
Construit unCTimeSpan
objet à partir d’un__time64_t
type.CTimeSpan( LONG, int, int, int );
Construit unCTimeSpan
objet à partir de composants avec chaque composant limité aux plages suivantes :Composant Plage lDays 0-25 000 (environ) nHours 0-23 nMins 0-59 nSecs 0-59
Notez que la version de débogage de la bibliothèque de classes Microsoft Foundation s’affirme si un ou plusieurs composants d’heure sont hors limites. Il vous incombe de valider les arguments avant d’appeler.
Exemple
CTimeSpan ts1; // Uninitialized time value
CTimeSpan ts2a(ts1); // Copy constructor
CTimeSpan ts2b = ts1; // Copy constructor again
CTimeSpan ts3(100); // 100 seconds
CTimeSpan ts4(0, 1, 5, 12); // 1 hour, 5 minutes, and 12 seconds
CTimeSpan::Format
Génère une chaîne mise en forme qui correspond à ce CTimeSpan
.
CString Format(LPCSTR pFormat) const;
CString Format(LPCTSTR pszFormat) const;
CString Format(UINT nID) const;
Paramètres
pFormat
, pszFormat
Chaîne de mise en forme similaire à la chaîne de printf
mise en forme. Les codes de mise en forme, précédés d’un signe de pourcentage (%
) sont remplacés par le composant correspondant CTimeSpan
. Les autres caractères de la chaîne de mise en forme sont copiés inchangés dans la chaîne retournée. La valeur et la signification des codes de mise en forme sont Format
répertoriées ci-dessous :
%D
Nombre total de jours dans ceCTimeSpan
%H
Heures dans le jour actuel%M
Minutes dans l’heure actuelle%S
Secondes dans la minute actuelle%%
Signe de pourcentage
nID
ID de la chaîne qui identifie ce format.
Valeur de retour
Objet CString
qui contient l’heure mise en forme.
Notes
La version de débogage de la bibliothèque vérifie les codes de mise en forme et affirme si le code n’est pas dans la liste ci-dessus.
Exemple
CTimeSpan ts(3, 1, 5, 12); // 3 days, 1 hour, 5 min, and 12 sec
CString s = ts.Format(_T("Total days: %D, hours: %H, mins: %M, secs: %S"));
ATLASSERT(s == _T("Total days: 3, hours: 01, mins: 05, secs: 12"));
CTimeSpan::GetDays
Retourne une valeur qui représente le nombre de jours complets dans ce CTimeSpan
.
LONGLONG GetDays() const throw();
Valeur de retour
Retourne le nombre de jours complets de 24 heures dans l’intervalle de temps. Cette valeur peut être négative si l’intervalle de temps est négatif.
Notes
Notez que l’heure d’été (DST) peut entraîner GetDays
un retour d’un résultat potentiellement surprenant. Par exemple, lorsque la DST est en vigueur, GetDays
signale le nombre de jours entre le 1er avril et le 1er mai comme 29, et non 30, car un jour en avril est raccourci d’une heure et ne compte donc pas comme un jour complet.
Exemple
CTimeSpan ts(3, 1, 5, 12); // 3 days, 1 hour, 5 min, and 12 sec
ATLASSERT(ts.GetDays() == 3);
CTimeSpan::GetHours
Retourne une valeur qui représente le nombre d’heures dans le jour actuel (-23 à 23).
LONG GetHours() const throw();
Valeur de retour
Retourne le nombre d’heures dans le jour actuel. La plage est de -23 à 23.
Exemple
CTimeSpan ts(3, 1, 5, 12); // 3 days, 1 hour, 5 min, and 12 sec
ATLASSERT(ts.GetHours() == 1);
ATLASSERT(ts.GetMinutes() == 5);
ATLASSERT(ts.GetSeconds() == 12);
CTimeSpan::GetMinutes
Retourne une valeur qui représente le nombre de minutes dans l’heure actuelle (-59 à 59).
LONG GetMinutes() const throw();
Valeur de retour
Retourne le nombre de minutes dans l’heure actuelle. La plage est de -59 à 59.
Exemple
Consultez l’exemple pour GetHours
.
CTimeSpan::GetSeconds
Retourne une valeur qui représente le nombre de secondes dans la minute actuelle (-59 à 59).
LONG GetSeconds() const throw();
Valeur de retour
Retourne le nombre de secondes dans la minute actuelle. La plage est de -59 à 59.
Exemple
Consultez l’exemple pour GetHours
.
CTimeSpan::GetTimeSpan
Retourne la valeur de l’objet CTimeSpan
.
__ time64_t GetTimeSpan() const throw();
Valeur de retour
Retourne la valeur actuelle de l’objet CTimeSpan
.
CTimeSpan::GetTotalHours
Retourne une valeur qui représente le nombre total d’heures complètes dans ce CTimeSpan
.
LONGLONG GetTotalHours() const throw();
Valeur de retour
Retourne le nombre total d’heures complètes dans ce CTimeSpan
.
Exemple
CTimeSpan ts(3, 1, 5, 12); // 3 days, 1 hour, 5 min, and 12 sec
ATLASSERT(ts.GetTotalHours() == 73);
ATLASSERT(ts.GetTotalMinutes() == 4385);
ATLASSERT(ts.GetTotalSeconds() == 263112);
CTimeSpan::GetTotalMinutes
Retourne une valeur qui représente le nombre total de minutes complètes dans ce CTimeSpan
.
LONGLONG GetTotalMinutes() const throw();
Valeur de retour
Retourne le nombre total de minutes complètes dans ce CTimeSpan
.
Exemple
Consultez l’exemple pour GetTotalHours
.
CTimeSpan::GetTotalSeconds
Retourne une valeur qui représente le nombre total de secondes complètes dans ce CTimeSpan
.
LONGLONG GetTotalSeconds() const throw();
Valeur de retour
Retourne le nombre total de secondes complètes dans ce CTimeSpan
.
Exemple
Consultez l’exemple pour GetTotalHours
.
CTimeSpan::operator +
, CTimeSpan::operator -
Ajoute et soustrait des CTimeSpan
objets.
CTimeSpan operator+(CTimeSpan span) const throw();
CTimeSpan operator-(CTimeSpan span) const throw();
Paramètres
span
Valeur à ajouter à l’objet CTimeSpan
.
Valeur de retour
Objet CTimeSpan
représentant le résultat de l’opération.
Notes
Ces deux opérateurs vous permettent d’ajouter et de soustraire CTimeSpan
des objets entre eux.
Exemple
CTimeSpan ts1(3, 1, 5, 12); // 3 days, 1 hour, 5 min, and 12 sec
CTimeSpan ts2(100); // 100 seconds
CTimeSpan ts3 = ts1 + ts2;
ATLASSERT(ts3.GetSeconds() == 52); // 6 mins, 52 secs
CTimeSpan::operator +=
, CTimeSpan::operator -=
Ajoute et soustrait un CTimeSpan
objet vers et à partir de ce CTimeSpan
.
CTimeSpan& operator+=(CTimeSpan span) throw();
CTimeSpan& operator-=(CTimeSpan span) throw();
Paramètres
span
Valeur à ajouter à l’objet CTimeSpan
.
Valeur de retour
Objet mis à jour CTimeSpan
.
Notes
Ces opérateurs vous permettent d’ajouter et de soustraire un CTimeSpan
objet vers et à partir de ce CTimeSpan
.
Exemple
CTimeSpan ts1(10); // 10 seconds
CTimeSpan ts2(100); // 100 seconds
ts2 -= ts1;
ATLASSERT(ts2.GetTotalSeconds() == 90);
CTimeSpan::Serialize64
Remarque
Cette méthode est disponible uniquement dans les projets MFC.
Sérialise les données associées à la variable membre vers ou à partir d’une archive.
CArchive& Serialize64(CArchive& ar);
Paramètres
ar
Objet CArchive
à mettre à jour.
Valeur de retour
Objet mis à jour CArchive
.
Voir aussi
asctime
, _wasctime
_ftime
, , _ftime32
_ftime64
gmtime
, , _gmtime32
_gmtime64
localtime
, , _localtime32
_localtime64
strftime
, , wcsftime
_strftime_l
, ,_wcsftime_l
time
, , _time32
_time64
Graphique hiérarchique
Classes partagées ATL/MFC