Partilhar via


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

Consulte também

Referência

Classe de COleDateTime

Gráfico de hierarquia

COleDateTime::COleDateTime

COleDateTime::SetDateTime

COleDateTime::operator =

COleDateTime::GetStatus

COleDateTime::m_dt