COleDateTime::SetDate
Define a data de esse objeto de COleDateTime .
int SetDate(
int nYear,
int nMonth,
int nDay
) throw( );
Parâmetros
- nYear, nMonth, nDay
Indica os componentes de data a ser copiados em este objeto de COleDateTime .
Valor de retorno
Zero se o valor de esse objeto de COleDateTime foi definido com êxito; caso contrário, 1.Este valor de retorno é baseado no tipo enumerado de DateTimeStatus .Para obter mais informações, consulte a função de membro de SetStatus .
Comentários
A data é definida com os valores especificados.O tempo são definidas de cronometrar 0, meia-noite.
Consulte a tabela a seguir para limites para os valores de parâmetro:
Parâmetro |
Limites |
---|---|
nYear |
100 – 9999 |
nMonth |
1 – 12 |
nDay |
0 – 31 |
Se o dia do mês transborda, é convertido para o dia do mês seguinte correto e o mês e/ou o ano são incrementadas de acordo.Um valor do dia de zero indica o último dia do mês anterior.o comportamento é o mesmo que SystemTimeToVariantTime.
Se o valor de data especificada por parâmetros é inválido, o status de esse objeto é definido como COleDateTime::invalid.Você deve usar GetStatus para verificar a validade de valor de DATE e não deve presumir que o valor de m_dt permanecerá inalterados.
Eis alguns exemplos de valores de data:
nYear |
nMonth |
nDay |
Valor |
---|---|---|---|
2000 |
2 |
29 |
29 de fevereiro de 2000 |
1776 |
7 |
4 |
4 de julho de 1776 |
1925 |
4 |
35 |
Abril de 1925 35 (data inválida) |
10000 |
1 |
1 |
1º de janeiro 10000 (Data inválida) |
Para definir a data e hora, consulte COleDateTime::SetDateTime.
Para obter mais informações sobre funções de membro que consulte o valor de esse objeto de COleDateTime , consulte as seguintes funções de membro:
Para obter mais informações sobre limites para valores de COleDateTime , consulte o artigo Data e hora: Suporte de automação.
Exemplo
// set only the date, time set to midnight
dt.SetDate(1999, 3, 19);
ASSERT(dt.GetYear() == 1999);
ASSERT(dt.GetDay() == 19);
ASSERT(dt.GetMonth() == 3);
ASSERT(dt.GetHour() == 0);
ASSERT(dt.GetMinute() == 0);
ASSERT(dt.GetSecond() == 0);
// setting the time only resets the date to 1899!
dt.SetTime(22, 15, 0);
ASSERT(dt.GetYear() == 1899);
ASSERT(dt.GetDay() == 30);
ASSERT(dt.GetMonth() == 12);
ASSERT(dt.GetHour() == 22);
ASSERT(dt.GetMinute() == 15);
ASSERT(dt.GetSecond() == 0);
Requisitos
Cabeçalho: atlcomtime.h