CTimeSpan
Kelas
Jumlah waktu, yang disimpan secara internal sebagai jumlah detik dalam rentang waktu.
Sintaks
class CTimeSpan
Anggota
Konstruktor Publik
Nama | Deskripsi |
---|---|
CTimeSpan::CTimeSpan |
Membangun CTimeSpan objek dengan berbagai cara. |
Metode Publik
Nama | Deskripsi |
---|---|
CTimeSpan::Format |
Mengonversi menjadi CTimeSpan string yang diformat. |
CTimeSpan::GetDays |
Mengembalikan nilai yang menunjukkan jumlah hari lengkap dalam ini CTimeSpan . |
CTimeSpan::GetHours |
Mengembalikan nilai yang menunjukkan jumlah jam dalam hari ini (-23 hingga 23). |
CTimeSpan::GetMinutes |
Mengembalikan nilai yang menunjukkan jumlah menit dalam jam saat ini (-59 hingga 59). |
CTimeSpan::GetSeconds |
Mengembalikan nilai yang menunjukkan jumlah detik dalam menit saat ini (-59 hingga 59). |
CTimeSpan::GetTimeSpan |
Mengembalikan nilai CTimeSpan objek. |
CTimeSpan::GetTotalHours |
Mengembalikan nilai yang menunjukkan jumlah total jam selesai dalam ini CTimeSpan . |
CTimeSpan::GetTotalMinutes |
Mengembalikan nilai yang menunjukkan jumlah total menit lengkap dalam ini CTimeSpan . |
CTimeSpan::GetTotalSeconds |
Mengembalikan nilai yang menunjukkan jumlah total detik lengkap dalam .CTimeSpan |
CTimeSpan::Serialize64 |
Menserialisasikan data ke atau dari arsip. |
Operator
Nama | Deskripsi |
---|---|
operator + - |
Menambahkan dan mengurangi CTimeSpan objek. |
operator += -= |
Menambahkan dan mengurangi CTimeSpan objek ke dan dari ini CTimeSpan . |
operator == < etc. |
Membandingkan dua nilai waktu relatif. |
Keterangan
CTimeSpan
tidak memiliki kelas dasar.
CTimeSpan
fungsi mengonversi detik menjadi berbagai kombinasi hari, jam, menit, dan detik.
Objek CTimeSpan
disimpan dalam __time64_t
struktur, yaitu 8 byte.
Kelas pendamping, CTime
, mewakili waktu absolut.
Kelas CTime
dan CTimeSpan
tidak dirancang untuk derivasi. Karena tidak ada fungsi virtual, ukuran objek CTime
dan CTimeSpan
persis 8 byte. Sebagian besar fungsi anggota sebaris.
Untuk informasi selengkapnya tentang menggunakan CTimeSpan
, lihat artikel Tanggal dan Waktu, dan Manajemen Waktu di Referensi Pustaka Run-Time.
Persyaratan
Header: atltime.h
CTimeSpan
Operator Perbandingan
Operator perbandingan.
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();
Parameter
span
Objek yang akan dibandingkan.
Tampilkan Nilai
Operator ini membandingkan dua nilai waktu relatif. Mereka kembali TRUE
jika kondisinya benar; jika tidak FALSE
.
Contoh
CTimeSpan ts1(100);
CTimeSpan ts2(110);
ATLASSERT((ts1 != ts2) && (ts1 < ts2) && (ts1 <= ts2));
CTimeSpan::CTimeSpan
Membangun CTimeSpan
objek dengan berbagai cara.
CTimeSpan() throw();
CTimeSpan(__time64_t time) throw();
CTimeSpan(
LONG lDays,
int nHours,
int nMins,
int nSecs) throw();
Parameter
timeSpanSrc
Objek CTimeSpan
yang sudah ada.
time
Nilai __time64_t
waktu, yang merupakan jumlah detik dalam rentang waktu.
lDays
, , nHours
nMins
,nSecs
Hari, jam, menit, dan detik, masing-masing.
Keterangan
Semua konstruktor ini membuat objek baru CTimeSpan
yang diinisialisasi dengan waktu relatif yang ditentukan. Setiap konstruktor dijelaskan di bawah ini:
CTimeSpan( );
Membuat objek yang tidak diinisialisasiCTimeSpan
.CTimeSpan( const CTimeSpan& );
MembuatCTimeSpan
objek dari nilai lainCTimeSpan
.CTimeSpan( __time64_t );
MembuatCTimeSpan
objek dari__time64_t
jenis.CTimeSpan( LONG, int, int, int );
MembuatCTimeSpan
objek dari komponen dengan setiap komponen yang dibatasi ke rentang berikut:Komponen Rentang IDays 0-25.000 (sekitar) nHours 0-23 nMins 0-59 nSecs 0-59
Perhatikan bahwa versi Debug Pustaka Kelas Microsoft Foundation menegaskan jika satu atau beberapa komponen hari waktu berada di luar rentang. Anda bertanggung jawab untuk memvalidasi argumen sebelum memanggil.
Contoh
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
Menghasilkan string berformat yang sesuai dengan ini CTimeSpan
.
CString Format(LPCSTR pFormat) const;
CString Format(LPCTSTR pszFormat) const;
CString Format(UINT nID) const;
Parameter
pFormat
, pszFormat
String pemformatan yang mirip printf
dengan string pemformatan. Kode pemformatan, yang didahului oleh tanda persen (%
), digantikan oleh komponen yang CTimeSpan
sesuai. Karakter lain dalam string pemformatan disalin tidak berubah ke string yang dikembalikan. Nilai dan arti kode pemformatan untuk Format
tercantum di bawah ini:
%D
Total hari dalam hal iniCTimeSpan
%H
Jam dalam hari ini%M
Menit dalam jam saat ini%S
Detik dalam menit saat ini%%
Tanda persen
nID
ID string yang mengidentifikasi format ini.
Tampilkan Nilai
Objek CString
yang berisi waktu yang diformat.
Keterangan
Versi Debug pustaka memeriksa kode pemformatan dan menegaskan jika kode tidak ada dalam daftar di atas.
Contoh
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
Mengembalikan nilai yang menunjukkan jumlah hari lengkap dalam ini CTimeSpan
.
LONGLONG GetDays() const throw();
Tampilkan Nilai
Mengembalikan jumlah hari selesai 24 jam dalam rentang waktu. Nilai ini mungkin negatif jika rentang waktu negatif.
Keterangan
Perhatikan bahwa Daylight Savings Time (DST) dapat menyebabkan GetDays
hasil yang berpotensi mengejutkan. Misalnya, ketika DST berlaku, GetDays
melaporkan jumlah hari antara 1 April dan 1 Mei sebagai 29, bukan 30, karena satu hari pada bulan April dipersingkat oleh satu jam dan oleh karena itu tidak dihitung sebagai hari lengkap.
Contoh
CTimeSpan ts(3, 1, 5, 12); // 3 days, 1 hour, 5 min, and 12 sec
ATLASSERT(ts.GetDays() == 3);
CTimeSpan::GetHours
Mengembalikan nilai yang menunjukkan jumlah jam dalam hari ini (-23 hingga 23).
LONG GetHours() const throw();
Tampilkan Nilai
Mengembalikan jumlah jam dalam hari ini. Rentangnya adalah -23 hingga 23.
Contoh
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
Mengembalikan nilai yang menunjukkan jumlah menit dalam jam saat ini (-59 hingga 59).
LONG GetMinutes() const throw();
Tampilkan Nilai
Mengembalikan jumlah menit dalam jam saat ini. Rentangnya adalah -59 hingga 59.
Contoh
Lihat contoh untuk GetHours
.
CTimeSpan::GetSeconds
Mengembalikan nilai yang menunjukkan jumlah detik dalam menit saat ini (-59 hingga 59).
LONG GetSeconds() const throw();
Tampilkan Nilai
Mengembalikan jumlah detik dalam menit saat ini. Rentangnya adalah -59 hingga 59.
Contoh
Lihat contoh untuk GetHours
.
CTimeSpan::GetTimeSpan
Mengembalikan nilai CTimeSpan
objek.
__ time64_t GetTimeSpan() const throw();
Tampilkan Nilai
Mengembalikan nilai CTimeSpan
objek saat ini.
CTimeSpan::GetTotalHours
Mengembalikan nilai yang menunjukkan jumlah total jam selesai dalam ini CTimeSpan
.
LONGLONG GetTotalHours() const throw();
Tampilkan Nilai
Mengembalikan jumlah total jam selesai dalam .CTimeSpan
Contoh
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
Mengembalikan nilai yang menunjukkan jumlah total menit lengkap dalam ini CTimeSpan
.
LONGLONG GetTotalMinutes() const throw();
Tampilkan Nilai
Mengembalikan jumlah total menit lengkap dalam .CTimeSpan
Contoh
Lihat contoh untuk GetTotalHours
.
CTimeSpan::GetTotalSeconds
Mengembalikan nilai yang menunjukkan jumlah total detik lengkap dalam .CTimeSpan
LONGLONG GetTotalSeconds() const throw();
Tampilkan Nilai
Mengembalikan jumlah total detik lengkap dalam .CTimeSpan
Contoh
Lihat contoh untuk GetTotalHours
.
CTimeSpan::operator +
, CTimeSpan::operator -
Menambahkan dan mengurangi CTimeSpan
objek.
CTimeSpan operator+(CTimeSpan span) const throw();
CTimeSpan operator-(CTimeSpan span) const throw();
Parameter
span
Nilai yang akan ditambahkan ke CTimeSpan
objek.
Tampilkan Nilai
Objek CTimeSpan
yang mewakili hasil operasi.
Keterangan
Kedua operator ini memungkinkan Anda untuk menambahkan dan mengurangi CTimeSpan
objek satu sama lain.
Contoh
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 -=
Menambahkan dan mengurangi CTimeSpan
objek ke dan dari ini CTimeSpan
.
CTimeSpan& operator+=(CTimeSpan span) throw();
CTimeSpan& operator-=(CTimeSpan span) throw();
Parameter
span
Nilai yang akan ditambahkan ke CTimeSpan
objek.
Tampilkan Nilai
Objek yang diperbarui CTimeSpan
.
Keterangan
Operator ini memungkinkan Anda untuk menambahkan dan mengurangi CTimeSpan
objek ke dan dari ini CTimeSpan
.
Contoh
CTimeSpan ts1(10); // 10 seconds
CTimeSpan ts2(100); // 100 seconds
ts2 -= ts1;
ATLASSERT(ts2.GetTotalSeconds() == 90);
CTimeSpan::Serialize64
Catatan
Metode ini hanya tersedia dalam proyek MFC.
Menserialisasikan data yang terkait dengan variabel anggota ke atau dari arsip.
CArchive& Serialize64(CArchive& ar);
Parameter
ar
Objek CArchive
yang ingin Anda perbarui.
Tampilkan Nilai
Objek yang diperbarui CArchive
.
Lihat juga
asctime
, _wasctime
_ftime
, , _ftime32
_ftime64
gmtime
, , _gmtime32
_gmtime64
localtime
, , _localtime32
_localtime64
strftime
, , wcsftime
_strftime_l
,_wcsftime_l
time
, , _time32
_time64
Bagan Hierarki
Kelas Bersama ATL/MFC
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk