COleDateTime::GetStatus
Obtient l'état (validité) d'un objet donné d' COleDateTime .
DateTimeStatus GetStatus( ) const throw( );
Valeur de retour
Retourne l'état de cette valeur d' COleDateTime . Si vous appelez GetStatus sur un objet d' COleDateTime construit avec la valeur par défaut, elle retourne valide. Si vous appelez GetStatus sur un objet d' COleDateTime initialisé avec la valeur de constructeur avec la valeur null, GetStatus retourne null. Consultez Notes pour plus d'informations.
Notes
La valeur de retour est définie par le type énuméré par DateTimeStatus , qui est défini dans la classe d' COleDateTime .
enum DateTimeStatus
{
error = -1,
valid = 0,
invalid = 1, // Invalid date (out of range, etc.)
null = 2, // Literally has no value
};
Pour obtenir une brève description de ces valeurs d'état, consultez la liste suivante :
COleDateTime::error indique qu'une erreur s'est produite lors d'une tentative d'obtenir une partie du valeur de date/d'heure.
COleDateTime::valid indique que cet objet d' COleDateTime est valide.
COleDateTime::invalid indique que cet objet d' COleDateTime n'est pas valide ; autrement dit, sa valeur peut être incorrecte.
COleDateTime::null indique que cet objet d' COleDateTime est null, c. autrement dit., qu'aucune valeur n'a été fournie pour cet objet. (C'est null dans l'ordre de base de données « avoir aucune valeur », par opposition à C++ NULL.)
L'état d'un objet d' COleDateTime n'est pas valide dans les cas suivants :
Si sa valeur est définie d'une valeur de variant ou d' COleVariant qui ne peut pas être convertie en valeur de date/d'heure.
Si sa valeur est d' time_t, d' SYSTEMTIME, ou de la valeur d' FILETIME qui ne peut pas être convertie en valeur de date/d'heure valide.
Si sa valeur est définie par SetDateTime avec des valeurs de paramètre non valide.
Si cet objet a rencontré un dépassement de capacité ou un dépassement de capacité pendant une opération arithmétique de devoir, à savoir, += ou l' -=.
Si une valeur non valide a été assignée à cet objet.
Si l'état de cet objet a été explicitement la valeur non valide à l'aide de SetStatus.
Pour plus d'informations sur les opérations qui peuvent affecter le mode à incorrect, consultez les fonctions membres suivantes :
Pour plus d'informations sur les limites des valeurs d' COleDateTime , consultez l'article date et heure : Prise en charge d'automation.
Exemple
COleDateTime t;
// this one is a leap year
t.SetDateTime(2000, 2, 29, 5, 0, 0);
ASSERT(t.GetStatus() == COleDateTime::valid);
// this date isn't valid
t.SetDateTime(1925, 2, 30, 5, 0, 0);
ASSERT(t.GetStatus() == COleDateTime::invalid);
// the only way to set null is to set null!
t.SetStatus(COleDateTime::null);
ASSERT(t.GetStatus() == COleDateTime::null);
Configuration requise
Header: atlcomtime.h