duration kelas

Mengukur rentang waktu seperti satu menit, dua jam, sepuluh milidetik, dan sebagainya.

Menahan durationinterval waktu, yang merupakan jumlah tanda centang selama unit waktu. Misalnya, lima menit adalah lima tanda centang, dengan setiap centang satu menit terpisah. 42 detik adalah 42 kutu, dengan masing-masing centang terpisah kedua.

Sintaks

template <class Rep, class Period> class duration;
template <class Rep, class Period = ratio<1>> class duration;
template <class Rep, class Period1, class Period2> class duration <duration<Rep, Period1>, Period2>;

Keterangan

Argumen Rep templat menjelaskan jenis yang digunakan untuk menahan jumlah tanda centang jam dalam interval. Argumen Period templat adalah instansiasi ratio yang menjelaskan ukuran interval yang diwakili setiap tanda centang.

Anggota

Konstruktor

Nama Deskripsi
duration Membuat duration objek.

Fungsi

Nama Deskripsi
count Mengembalikan jumlah tanda centang jam dalam interval waktu.
max Statis. Mengembalikan nilai maksimum parameter templat Repyang diizinkan .
min Statis. Mengembalikan nilai parameter Reptemplat terendah yang diizinkan .
zero Statis. Akibatnya, mengembalikan Rep(0).

Operators

Nama Deskripsi
duration::operator- Mengembalikan salinan duration objek dengan jumlah centang yang dinegasikan.
duration::operator-- Mengurangi jumlah centang tersimpan.
duration::operator-= Mengurangi jumlah centang yang ditentukan duration dari jumlah centang yang disimpan.
duration::operator+ Menampilkan *this.
duration::operator++ Menaikkan jumlah centang yang disimpan.
duration::operator+= Menambahkan jumlah centang yang ditentukan duration ke jumlah centang tersimpan.
duration::operator= Menetapkan satu durasi ke durasi lainnya.
duration::operator*= Mengalikan jumlah centang tersimpan dengan nilai tertentu.
duration::operator/= Membagi jumlah centang tersimpan dengan jumlah centang objek tertentu duration .
duration::operator%= Mengurangi modul jumlah centang tersimpan dengan nilai yang ditentukan.

Non-anggota

Templat fungsi

Nama Deskripsi
abs Mengembalikan nilai absolut dari duration.
ceil Mengembalikan representable duration terkecil yang lebih besar dari atau sama dengan yang ditentukan duration.
duration_cast Melemparkan duration objek ke jenis target duration tertentu.
floor Mengembalikan representable duration terbesar yang kurang dari atau sama dengan yang ditentukan duration.
from_stream Uraikan duration dari aliran yang diberikan menggunakan format yang ditentukan.
round Membulatkan yang ditentukan duration ke terdekat yang dapat duration diwakili dalam jenis target.

Operators

Nama Deskripsi
operator+ Setelah mengonversi durasi yang ditambahkan ke jenis umumnya, mengembalikan duration dengan jumlah centang yang sama dengan jumlah jumlah centang yang dikonversi.
operator- Setelah mengonversi durasi yang dikurangi ke jenis umumnya, mengembalikan duration dengan jumlah centang yang sama dengan jumlah kutu di RHS duration yang dikurangi dari jumlah kutu di LHS duration.
operator* Setelah mengonversi durasi yang dikalikan ke jenis umumnya, mengembalikan duration dengan jumlah centang yang sama dengan perkalian jumlah centang yang dikonversi.
operator/ Setelah mengonversi durasi yang dibagi menjadi jenis umumnya, mengembalikan duration dengan jumlah centang yang sama dengan pembagian jumlah centang yang dikonversi.
operator% Setelah mengonversi duration dan pembavisor ke jenis umumnya, mengembalikan duration dengan jumlah centang yang sama dengan sisa pembagian.
operator== Setelah mengonversi duration jenis yang dibandingkan dengan jenis umumnya, menentukan apakah jumlah tanda centang sama.
operator!= Tentukan apakah duration tidak sama dengan yang lain.
operator< Tentukan apakah satu kurang dari yang duration lain.
operator<= Tentukan apakah satu duration kurang dari atau sama dengan yang lain.
operator> Tentukan apakah satu lebih besar dari yang duration lain.
operator>= Tentukan apakah satu duration lebih besar dari atau sama dengan yang lain.
operator<=> Bandingkan satu duration dengan yang lain duration. Operator >, >=, <=, <, != disintesis oleh pengkompilasi.
operator<< Keluarkan duration ke aliran yang diberikan.

Alias jenis kenyamanan

Nama Deskripsi
duration::period Sinonim untuk parameter Periodtemplat .
duration::rep Sinonim untuk parameter Reptemplat .

Persyaratan

Header:<chrono>

Ruang nama:std::chrono

duration::count

Mengambil jumlah tanda centang jam dalam interval waktu.

constexpr Rep count() const;

Nilai hasil

Jumlah jam berdetak dalam interval waktu.

Konstruktor duration::duration

Membuat duration objek.

1) constexpr duration() = default;
2) constexpr duration(const duration& d) = default;

3) template <class Rep2>
constexpr explicit duration(const Rep2& R);

4) template <class Rep2, class Period2>
constexpr duration(const duration<Rep2, Period2>& Dur);

Parameter

Dur
Jumlah tanda centang periode yang ditentukan oleh Period2.

Period2
std::ratio Spesialisasi templat untuk mewakili periode centang dalam satuan detik.

R
Jumlah tanda centang periode default.

Rep2
Jenis aritmatika untuk mewakili jumlah tanda centang.

Keterangan

1) Konstruktor default membuat objek yang tidak diinisialisasi. Inisialisasi nilai dengan menggunakan kurung kurawal kosong menginisialisasi objek yang mewakili interval waktu tanda centang jam nol.

2) Konstruktor salinan membuat salinan bitwise dari d.

3) Membangun objek yang mewakili interval R waktu tanda centang jam menggunakan periode std::ratio<1>default . Untuk menghindari round-off jumlah tick, ini adalah kesalahan untuk membuat objek durasi dari jenis Rep2 representasi yang dapat diperlakukan sebagai jenis floating-point ketika duration::rep tidak dapat diperlakukan sebagai jenis floating-point.

4) Membangun objek yang mewakili interval waktu yang panjangnya adalah interval waktu yang ditentukan oleh Dur. Untuk menghindari pemotongan jumlah centang, kesalahan untuk membuat objek durasi dari objek durasi lain yang jenisnya tidak dapat dihindari dengan jenis target.

Jenis D1durasi tidak dapat diijinkan dengan jenis D2 durasi lain jika D2 tidak dapat diperlakukan sebagai jenis titik mengambang dan ratio_divide<D1::p eriod, D2::p eriod>::type::d en bukan 1.

Kecuali Rep2 secara implisit dapat dikonversi ke rep dan treat_as_floating_point<rep>memegang true atau treat_as_floating_point<Rep2>menahan false, konstruktor kedua tidak berpartisipasi dalam resolusi kelebihan beban. Untuk informasi selengkapnya, lihat <type_traits>.

Kecuali tidak ada luapan yang diinduksi dalam konversi dan treat_as_floating_point<rep>bernilai benar, atau sama dengan ratio_divide<Period2, period>::den 1 dan treat_as_floating_point<Rep2>menyimpan false, konstruktor ketiga tidak berpartisipasi dalam resolusi kelebihan beban. Untuk informasi selengkapnya, lihat <type_traits>.

Contoh: Membuat duration

// compile using: /std:c++latest
#include <iostream>
#include <chrono>

using namespace std::chrono;

int main()
{
    // create a duration that tracks ticks as 1/10ths of a second
    duration<int, std::ratio<1, 10>> tenths{ 5 };
    std::cout << tenths << '\n';

    hours h{12}; // hours is a convenience duration typedef 
    auto h2 = 3h; // 'h' is a convenience operator. h2 is a duration<int, std::ratio<3600,1>>

    std::cout << h << ":" << h2 << '\n';

    return 0;
}
5ds
3h:3h

duration::max

Metode statis yang mengembalikan batas atas untuk nilai jenis Repparameter templat .

static constexpr duration max();

Nilai hasil

Akibatnya, mengembalikan duration(duration_values<rep>::max()).

duration::min

Metode statis yang mengembalikan batas bawah untuk nilai jenis Repparameter templat .

static constexpr duration min();

Nilai hasil

Akibatnya, mengembalikan duration(duration_values<rep>::min()).

duration::operator-

Mengembalikan salinan duration objek dengan jumlah centang yang dinegasikan.

constexpr duration operator-() const;

duration::operator--

Mengurangi jumlah centang tersimpan.

1) duration& operator--();
2) duration operator--(int);

Nilai hasil

1) Mengembalikan *this. 2) Mengembalikan salinan *this sebelum keputusan.

duration::operator%=

Mengurangi modul jumlah centang tersimpan dengan nilai yang ditentukan.

1) duration& operator%=(const rep& Div);
2) duration& operator%=(const duration& Div);

Parameter

Div
1) Div jumlah centang. 2) Div yang duration berisi jumlah centang.

Nilai hasil

Objek duration setelah operasi modulo selesai.

duration::operator*=

Mengalikan jumlah centang tersimpan dengan nilai tertentu.

duration& operator*=(const rep& Mult);

Parameter

Mult
Nilai jenis yang ditentukan oleh duration::rep.

Nilai hasil

Objek duration setelah perkalian selesai.

duration::operator/=

Membagi jumlah centang tersimpan dengan nilai tertentu.

duration& operator/=(const rep& Div);

Parameter

Div
Nilai jenis yang ditentukan oleh duration::rep.

Nilai hasil

Objek duration setelah pembagian selesai.

duration::operator+

Menampilkan *this.

constexpr duration operator+() const;

Nilai hasil

*this

duration::operator++

Menaikkan jumlah centang yang disimpan.

1) duration& operator++();
2) duration operator++(int);

Nilai hasil

1) Mengembalikan *this. 2) Mengembalikan salinan *this sebelum kenaikan.

duration::operator+=

Menambahkan jumlah centang objek tertentu duration ke jumlah centang tersimpan.

duration& operator+=(const duration& Dur);

Parameter

Dur
Objek duration.

Nilai hasil

Objek duration setelah penambahan selesai.

duration::operator-=

Mengurangi jumlah centang objek tertentu duration dari jumlah centang yang disimpan.

duration& operator-=(const duration& Dur);

Parameter

Dur
Objek duration.

Nilai hasil

Objek duration setelah pengurangan selesai.

duration::zero

Menampilkan duration(duration_values<rep>::zero()).

static constexpr duration zero();

duration::operator=

Menetapkan satu durasi ke durasi lainnya.

duration& operator=(const duration &other) = default;

Parameter

other
Objek duration yang akan disalin.

Nilai hasil

Objek LHS duration .

Baca juga

<chrono>
Typedef duration kenyamanan seperti minutes, , secondsdan banyak lagi
Kemudahan literal selama berjam-jam, menit, dan banyak lagi
duration_values struktur
Referensi File Header