Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Stellt einen Tag des Monats dar. Beispielsweise der 25. Tag des Monats.
Syntax
class day; // C++20
Bemerkungen
Normalerweise enthält ein day Wert im Bereich [1, 31]. Es kann nicht negative Werte außerhalb dieses Bereichs enthalten, aber das Verhalten ist nicht angegeben, wenn es nicht innerhalb des Bereichs [0, 255] liegt.
Elemente
| Name | BESCHREIBUNG |
|---|---|
| Erbauer | Erstellen eines day. |
ok |
Stellen Sie sicher, dass sich der Tagwert im gültigen Bereich [1,31] befindet. |
operator++ |
Erhöhen Sie diesen dayWert. |
operator+= |
Addieren Sie die angegebene Anzahl von Tagen zu diesem day. |
operator-- |
Dekrementieren Sie die day. |
operator-= |
Subtrahieren der angegebenen Anzahl von Tagen davon day |
operator unsigned |
Rufen Sie den Tageswert als ganze Zahl ohne Vorzeichen ab. |
Nicht-Member
| Name | BESCHREIBUNG |
|---|---|
from_stream |
Analysieren Eines day aus dem angegebenen Datenstrom mithilfe des angegebenen Formats. |
operator+ |
Fügen Sie die dayangegebene Anzahl von Tagen hinzu und geben Sie ein neues day Objekt zurück. |
operator- |
Subtrahieren Sie die angegebene Anzahl von Tagen davon day, wobei ein neues day Objekt zurückgegeben wird. |
operator== |
Hiermit wird bestimmt, ob zwei day-Instanzen gleich sind. |
operator<=> |
Vergleichen Sie dies day mit einem anderen day. Die >, >=, <=, <, != Operatoren werden vom Compiler synthetisiert. |
operator<< |
Gibt einen day an den angegebenen Datenstrom aus. |
operator""d |
Erstellen Sie ein day Literal für einen Tag im Monat. |
Anforderungen
Kopfball:<chrono> (seit C++20)
Namespace:std::chrono
Compileroption:/std:c++latest
Erbauer
Erstellt ein Objekt vom Typ day.
1) day() = default;
2) explicit constexpr day(unsigned d) noexcept;
Die Parameter
d
Erstellen eines day mit Wert d.
Bemerkungen
1) Der Standardkonstruktor initialisiert nicht den Tagwert.
2) Erstellen Sie einen day mit dem Tagwert initialisiert in d.
Beispiel: Erstellen einer day-Klasse
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
day d{1}; // day 1
day d2 = 2d; // day 2
std::cout << d << ", " << d2;
return 0;
}
01, 02
ok
Hiermit wird überprüft, ob der Wert, der in dieser day-Klasse gespeichert ist, im gültigen Bereich liegt.
constexpr bool ok() const noexcept;
Rückgabewert
true wenn sich der Tagwert im Bereich [1,31] befindet. Andernfalls false.
operator++
Addieren Sie 1 zum Tageswert.
1) constexpr std::chrono::day& operator++() noexcept;
2) constexpr std::chrono::day operator++(int) noexcept;
Rückgabewert
1) Ein Verweis darauf *thisday, nachdem er erhöht wurde (ein Postfix-Inkrement).
2) Eine Kopie der day, bevor sie erhöht wurde (ein Präfix inkrementiert).
Beispiel: operator++
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
using namespace std::chrono;
int main()
{
day d{1};
std::cout << d << " " << ++d << "\n"; // constexpr day& operator++() noexcept
std::cout << d << " " << d++ << "\n"; // constexpr day operator++(int) noexcept
std::cout << d;
return 0;
}
01 02
02 02
03
Bemerkungen
Wenn das inkrementierte Ergebnis außerhalb des Bereichs [0, 255] liegt, ist der gespeicherte Wert nicht angegeben.
operator--
Subtrahieren Sie 1 vom Tagwert.
1) constexpr std::chrono::day& operator--() noexcept;
2) constexpr std::chrono::day operator--(int) noexcept;
Rückgabewert
1) Ein Verweis auf *this einen Tag , nachdem er dekrementiert wurde (eine Postfix-Dekrementierung).
2) Eine Kopie der *day, bevor sie dekrementiert wurde (präfix decrement).
Beispiel: operator--
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
int main()
{
day d{5};
std::cout << d << " " << --d << "\n"; // constexpr day& operator--() noexcept
std::cout << d << " " << d-- << "\n"; // constexpr day operator--(int) noexcept
std::cout << d << "\n";
return 0;
}
05 04
04 04
03
Bemerkungen
Wenn das dekrementierte Ergebnis außerhalb des Bereichs [0, 255] liegt, ist der gespeicherte Wert nicht angegeben.
operator+=
Fügen Sie dieser dayDatei Tage hinzu.
constexpr day& operator+=(const days& d) noexcept;
Die Parameter
d
Die Anzahl der hinzuzufügenden Tage.
Rückgabewert
*this
Wenn sich das Ergebnis außerhalb des Bereichs [0, 255] befindet, ist der gespeicherte Wert nicht angegeben.
operator-=
Subtrahieren Sie Tage von diesem day.
constexpr day& operator-=(const days& d) noexcept;
Die Parameter
d
Die Anzahl der Tage, die subtrahiert werden sollen.
Rückgabewert
*this. Wenn sich das Ergebnis außerhalb des Bereichs [0, 255] befindet, ist der gespeicherte Wert nicht angegeben.
operator unsigned
Rufen Sie den day Wert ab.
explicit constexpr operator unsigned() const noexcept;
Rückgabewert
Der Wert des day
Beispiel: operator unsigned()
// compile using: /std:c++latest
#include <iostream>
#include <chrono>
int main()
{
chrono::day d{14d};
unsigned dayValue = static_cast<unsigned>(d);
cout << dayValue << "\n";
return 0;
}
14
Siehe auch
<chrono>
month_day Klasse
month_day_last Klasse
year_month_day
year_month_day_last
Headerdateienreferenz