Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Yılın bir ayını temsil eder. Örneğin, Temmuz.
Sözdizimi
class month; // C++20
Açıklamalar
A month normalde [1, 12] aralığındaki değerleri tutar. Negatif olmayan değerleri de bu aralığın dışında tutabilir.
Sınıfıyla kullanabileceğiniz sabitler için aşağıdaki Month sabitleri bölümüne month bakın.
Üyeler
| Veri Akışı Adı | Açıklama |
|---|---|
| Oluşturucular | oluşturma month. |
ok |
Ay değerinin geçerli [1,12] aralığında olduğunu doğrulayın. |
operator++ |
değerini artırma month. |
operator+= |
Belirtilen ay sayısını bu monthöğesine ekleyin. |
operator-- |
Bunu monthazaltma. |
operator-= |
Belirtilen ay sayısını buradan monthçıkarın. |
operator unsigned |
month Değeri alın. |
Üye olmayanlar
| Veri Akışı Adı | Açıklama |
|---|---|
from_stream |
Belirtilen biçimi kullanarak verilen akıştan bir month ayrıştırın. |
operator+ |
Yeni bir month örnek döndürerek belirtilen ay sayısını buna monthekleyin. |
operator- |
Belirtilen ay sayısını bu aydan çıkarın. Yeni month bir örnek döndürür. |
operator== |
İki ayın eşit olup olmadığını belirleyin. |
operator<=> |
Bu ayı başka bir ay ile karşılaştırın. İşleçler >, >=, <=, <, != derleyici tarafından sentezlenir. |
operator<< |
Verilen akışa a month çıkışı. |
Gereksinimler
Üst bilgi: <chrono> (C++20'den beri)
Ad alanı: std::chrono
Derleyici Seçeneği: /std:c++latest
Oluşturucular
oluşturma month.
1) month() = default;
2) explicit constexpr month(unsigned m) noexcept;
Parametreler
m
değeriyle mbir month oluşturur.
Açıklamalar
1) Varsayılan oluşturucu gün değerini başlatmaz.
2) olarak başlatılan mgün değeriyle bir month oluşturur.
ok
Burada month depolanan değerin geçerli aralıkta olup olmadığını denetleyin.
constexpr bool ok() const noexcept;
Dönüş değeri
true ay değeri [1,12] aralığındaysa. Tersi durumda false.
operator++
Ay değerini artırma.
1) constexpr month& operator++() noexcept;
2) constexpr month operator++(int) noexcept;
Dönüş değeri
1) Artırıldıktan sonraki aya *this başvuru (sonek artışı).
2) Artırılamadan önce öğesinin monthbir kopyası (bir ön ek artışı).
Örnek: operator++
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
month m{ January };
month m2{4}; // April
std::cout << m << " " << ++m << "\n"; // constexpr month& operator++() noexcept
std::cout << m << " " << m++ << "\n"; // constexpr month operator++(int) noexcept
std::cout << m << "\n";
std::cout << m2 << "\n";
return 0;
}
Jan Feb
Feb Feb
Mar
Apr
Açıklamalar
Sonuç 12'yi aşarsa 1 olarak ayarlanır.
operator--
Ay değerinden 1 çıkarın.
1) constexpr month& operator--() noexcept;
2) constexpr month operator--(int) noexcept;
Dönüş değeri
1) Geri alındıktan sonraki başvuru *this month (sonek azaltma).
2) Azaltmadan önceki bir kopyası month (bir ön ek azaltma).
Örnek: operator--
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std;
using namespace std::chrono;
int main()
{
month m{May};
cout << m << " " << --m << "\n"; // constexpr month& operator++() noexcept
cout << m << " " << m-- << "\n"; // constexpr month operator++(int) noexcept
cout << m << "\n";
return 0;
}
May Apr
Apr Apr
Mar
Açıklamalar
Azalan sonuç 1'den küçükse 12 olarak ayarlanır.
operator+=
Ayları buna monthekleyin.
constexpr month& operator+=(const months& m) noexcept;
Parametreler
m
Eklenecek ay sayısı.
Dönüş değeri
*this
operator-=
Bu monthiçinden çıkarınmonths.
constexpr month& operator-=(const months& m) noexcept;
Parametreler
m
Çıkaracak aylar.
Dönüş değeri
*this.
operator unsigned
İmzasız month değeri alın.
explicit constexpr operator unsigned() const noexcept;
Dönüş değeri
Bunun imzalanmamış değeri month
Örnek: operator unsigned()
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
month m{July};
unsigned monthValue = static_cast<unsigned>(m);
std::cout << monthValue << "\n";
return 0;
}
7
Ay sabitleri
(C++20) Üst <chrono> bilgi, kodunuzun daha rahat olması, tür güvenliği ve sürdürülebilirliği için birlikte month kullanabileceğiniz aşağıdaki sabitleri tanımlar. Bu sabitler kapsam içinde olduğunda std::chrono kapsam içindedir.
// Calendrical constants
inline constexpr month January{1};
inline constexpr month February{2};
inline constexpr month March{3};
inline constexpr month April{4};
inline constexpr month May{5};
inline constexpr month June{6};
inline constexpr month July{7};
inline constexpr month August{8};
inline constexpr month September{9};
inline constexpr month October{10};
inline constexpr month November{11};
inline constexpr month December{12};
Ayrıca bkz.
<chrono>
month_day Sınıf
month_day_last Sınıf
month_weekday Sınıf
month_weekday_last sınıfı