Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
Observação
A biblioteca Microsoft Foundation Classes (MFC) e a Active Template Library (ATL) continuam a ser suportadas. No entanto, já não estamos a adicionar funcionalidades nem a atualizar a documentação.
Uma quantidade de tempo, que é armazenada internamente como o número de segundos no intervalo de tempo.
Sintaxe
class CTimeSpan
Membros
Construtores Públicos
| Nome | Description |
|---|---|
CTimeSpan::CTimeSpan |
Constrói CTimeSpan objetos de várias formas. |
Métodos Públicos
| Nome | Description |
|---|---|
CTimeSpan::Format |
Converte a CTimeSpan numa string formatada. |
CTimeSpan::GetDays |
Devolve um valor que representa o número de dias completos neste CTimeSpan. |
CTimeSpan::GetHours |
Devolve um valor que representa o número de horas no dia atual (-23 a 23). |
CTimeSpan::GetMinutes |
Devolve um valor que representa o número de minutos na hora atual (-59 a 59). |
CTimeSpan::GetSeconds |
Devolve um valor que representa o número de segundos no minuto atual (-59 a 59). |
CTimeSpan::GetTimeSpan |
Devolve o valor do CTimeSpan objeto. |
CTimeSpan::GetTotalHours |
Devolve um valor que representa o número total de horas completas neste CTimeSpan. |
CTimeSpan::GetTotalMinutes |
Devolve um valor que representa o número total de minutos completos neste CTimeSpan. |
CTimeSpan::GetTotalSeconds |
Devolve um valor que representa o número total de segundos completos neste CTimeSpan. |
CTimeSpan::Serialize64 |
Serializa dados para ou a partir de um arquivo. |
Operadores
| Nome | Description |
|---|---|
operator + - |
Adiciona e subtrai CTimeSpan objetos. |
operator += -= |
Soma e subtrai um CTimeSpan objeto a e a partir deste CTimeSpan. |
operator == < etc. |
Compara dois valores relativos de tempo. |
Observações
CTimeSpan não tem uma classe base.
CTimeSpan As funções convertem segundos em várias combinações de dias, horas, minutos e segundos.
O CTimeSpan objeto é armazenado numa __time64_t estrutura, que tem 8 bytes.
Uma classe companheira, CTime, representa um tempo absoluto.
As CTime classes e CTimeSpan não foram desenhadas para derivação. Como não existem funções virtuais, o tamanho de ambos CTime os objetos CTimeSpan é exatamente 8 bytes. A maioria das funções dos membros é inline.
Para mais informações sobre a utilização CTimeSpande , consulte os artigos Data e Hora, e Gestão do Tempo na Run-Time Library Reference.
Requerimentos
Cabeçalho:atltime.h
CTimeSpan Operadores de Comparação
Operadores de comparação.
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();
Parâmetros
span
O objeto a comparar.
Valor de retorno
Estes operadores comparam dois valores relativos de tempo. Eles retornam TRUE se a condição for verdadeira; caso contrário FALSE.
Example
CTimeSpan ts1(100);
CTimeSpan ts2(110);
ATLASSERT((ts1 != ts2) && (ts1 < ts2) && (ts1 <= ts2));
CTimeSpan::CTimeSpan
Constrói CTimeSpan objetos de várias formas.
CTimeSpan() throw();
CTimeSpan(__time64_t time) throw();
CTimeSpan(
LONG lDays,
int nHours,
int nMins,
int nSecs) throw();
Parâmetros
timeSpanSrc
Um CTimeSpan objeto que já existe.
time
Um __time64_t valor de tempo, que é o número de segundos no intervalo de tempo.
lDays, nHours, nMins, nSecs
Dias, horas, minutos e segundos, respetivamente.
Observações
Todos estes construtores criam um novo CTimeSpan objeto inicializado com o tempo relativo especificado. Cada construtor é descrito abaixo:
CTimeSpan( );Constrói um objeto não inicializadoCTimeSpan.CTimeSpan( const CTimeSpan& );Constrói umCTimeSpanobjeto a partir de outroCTimeSpanvalor.CTimeSpan( __time64_t );Constrói umCTimeSpanobjeto a partir de um__time64_ttipo.CTimeSpan( LONG, int, int, int );Constrói umCTimeSpanobjeto a partir de componentes com cada componente restrito aos seguintes intervalos:Componente Alcance Dias 0-25.000 (aproximadamente) nHoras 0-23 nMins 0-59 nSecs 0-59
Note que a versão Debug da Microsoft Foundation Class Library verifica se um ou mais componentes do tempo-dia estão fora do alcance. É sua responsabilidade validar os argumentos antes de ligar.
Example
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
Gera uma cadeia formatada que corresponde a esta CTimeSpan.
CString Format(LPCSTR pFormat) const;
CString Format(LPCTSTR pszFormat) const;
CString Format(UINT nID) const;
Parâmetros
pFormat, pszFormat
Uma cadeia de formatação semelhante à printf cadeia de formatação. Os códigos de formatação, precedidos por um sinal de percentagem (%), são substituídos pelo componente correspondente CTimeSpan . Outros caracteres na cadeia de formatação são copiados inalterados para a cadeia devolvida. O valor e significado dos códigos Format de formatação para estão listados abaixo:
%DDias totais nistoCTimeSpan%HHoras nos dias atuais%MAtas na hora atual%SSegundos no minuto atual%%Sinal de percentagem
nID
O ID da cadeia que identifica este formato.
Valor de retorno
Um CString objeto que contém a hora formatada.
Observações
A versão Debug da biblioteca verifica os códigos de formatação e confirma se o código não está na lista acima.
Example
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
Devolve um valor que representa o número de dias completos neste CTimeSpan.
LONGLONG GetDays() const throw();
Valor de retorno
Devolve o número de dias completos de 24 horas no intervalo de tempo. Este valor pode ser negativo se o intervalo de tempo for negativo.
Observações
Note que o Horário de Verão (DST) pode causar GetDays um resultado potencialmente surpreendente. Por exemplo, quando o horário de verão está em vigor, GetDays o número de dias entre 1 de abril e 1 de maio é reportado como 29, e não 30, porque um dia em abril é encurtado em uma hora e, portanto, não conta como dia completo.
Example
CTimeSpan ts(3, 1, 5, 12); // 3 days, 1 hour, 5 min, and 12 sec
ATLASSERT(ts.GetDays() == 3);
CTimeSpan::GetHours
Devolve um valor que representa o número de horas no dia atual (-23 a 23).
LONG GetHours() const throw();
Valor de retorno
Devolve o número de horas no dia atual. O intervalo vai de -23 a 23.
Example
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
Devolve um valor que representa o número de minutos na hora atual (-59 a 59).
LONG GetMinutes() const throw();
Valor de retorno
Devolve o número de minutos na hora atual. O intervalo vai de -59 a 59.
Example
Veja o exemplo para GetHours.
CTimeSpan::GetSeconds
Devolve um valor que representa o número de segundos no minuto atual (-59 a 59).
LONG GetSeconds() const throw();
Valor de retorno
Devolve o número de segundos no minuto atual. O intervalo vai de -59 a 59.
Example
Veja o exemplo para GetHours.
CTimeSpan::GetTimeSpan
Devolve o valor do CTimeSpan objeto.
__ time64_t GetTimeSpan() const throw();
Valor de retorno
Devolve o valor atual do CTimeSpan objeto.
CTimeSpan::GetTotalHours
Devolve um valor que representa o número total de horas completas neste CTimeSpan.
LONGLONG GetTotalHours() const throw();
Valor de retorno
Devolve o número total de horas completas neste CTimeSpan.
Example
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
Devolve um valor que representa o número total de minutos completos neste CTimeSpan.
LONGLONG GetTotalMinutes() const throw();
Valor de retorno
Devolve o número total de minutos completos neste CTimeSpan.
Example
Veja o exemplo para GetTotalHours.
CTimeSpan::GetTotalSeconds
Devolve um valor que representa o número total de segundos completos neste CTimeSpan.
LONGLONG GetTotalSeconds() const throw();
Valor de retorno
Devolve o número total de segundos completos neste CTimeSpan.
Example
Veja o exemplo para GetTotalHours.
CTimeSpan::operator +, CTimeSpan::operator -
Adiciona e subtrai CTimeSpan objetos.
CTimeSpan operator+(CTimeSpan span) const throw();
CTimeSpan operator-(CTimeSpan span) const throw();
Parâmetros
span
O valor a acrescentar ao CTimeSpan objeto.
Valor de retorno
Um objeto que CTimeSpan representa o resultado da operação.
Observações
Estes dois operadores permitem-lhe adicionar e subtrair CTimeSpan objetos um do outro.
Example
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 -=
Soma e subtrai um CTimeSpan objeto a e a partir deste CTimeSpan.
CTimeSpan& operator+=(CTimeSpan span) throw();
CTimeSpan& operator-=(CTimeSpan span) throw();
Parâmetros
span
O valor a acrescentar ao CTimeSpan objeto.
Valor de retorno
O objeto atualizado CTimeSpan .
Observações
Estes operadores permitem-lhe adicionar e subtrair um CTimeSpan objeto para e de este CTimeSpan.
Example
CTimeSpan ts1(10); // 10 seconds
CTimeSpan ts2(100); // 100 seconds
ts2 -= ts1;
ATLASSERT(ts2.GetTotalSeconds() == 90);
CTimeSpan::Serialize64
Observação
Este método só está disponível em projetos MFC.
Serializa os dados associados à variável membro para ou a partir de um arquivo.
CArchive& Serialize64(CArchive& ar);
Parâmetros
ar
O CArchive objeto que queres atualizar.
Valor de retorno
O objeto atualizado CArchive .
Consulte também
asctime, _wasctime
_ftime, _ftime32, _ftime64
gmtime, _gmtime32, _gmtime64
localtime, _localtime32, _localtime64
strftime, wcsftime, _strftime_l, _wcsftime_l
time, _time32, _time64
Gráfico de Hierarquia
Classes compartilhadas ATL/MFC