QDate Class
Die Klasse „QDate“ stellt Datumsfunktionen bereit. Mehr...
| Header: | #include <QDate> |
| CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
| qmake: | QT += core |
Hinweis: Alle Funktionen dieser Klasse sind reentrant.
QDate-Vergleiche
| Kategorie | Vergleichbare Typen | Beschreibung |
|---|---|---|
| strong | QDate | |
| strong | std::chrono::year_month_day, std::chrono::year_month_day_last, std::chrono::year_month_weekday und std::chrono::year_month_weekday_last. | Diese Vergleichsoperatoren sind nur bei Verwendung von C++20 verfügbar. |
Öffentliche Funktionen
| QDate() | |
(since 6.4) | QDate(std::chrono::year_month_day date) |
(since 6.4) | QDate(std::chrono::year_month_day_last date) |
(since 6.4) | QDate(std::chrono::year_month_weekday date) |
(since 6.4) | QDate(std::chrono::year_month_weekday_last date) |
| QDate(int y, int m, int d) | |
| QDate | addDays(qint64 ndays) const |
(since 6.4) QDate | addDuration(std::chrono::days ndays) const |
| QDate | addMonths(int nmonths, QCalendar cal) const |
| QDate | addMonths(int nmonths) const |
| QDate | addYears(int nyears, QCalendar cal) const |
| QDate | addYears(int nyears) const |
| int | day(QCalendar cal) const |
| int | day() const |
| int | dayOfWeek(QCalendar cal) const |
| int | dayOfWeek() const |
| int | dayOfYear(QCalendar cal) const |
| int | dayOfYear() const |
| int | daysInMonth(QCalendar cal) const |
| int | daysInMonth() const |
| int | daysInYear(QCalendar cal) const |
| int | daysInYear() const |
| qint64 | daysTo(QDate d) const |
| QDateTime | endOfDay(const QTimeZone &zone) const |
(since 6.5) QDateTime | endOfDay() const |
| void | getDate(int *year, int *month, int *day) const |
| bool | isNull() const |
| bool | isValid() const |
| int | month(QCalendar cal) const |
| int | month() const |
| bool | setDate(int year, int month, int day) |
| bool | setDate(int year, int month, int day, QCalendar cal) |
| QDateTime | startOfDay(const QTimeZone &zone) const |
(since 6.5) QDateTime | startOfDay() const |
| qint64 | toJulianDay() const |
| std::chrono::sys_days | toStdSysDays() const |
| QString | toString(const QString &format, QCalendar cal) const |
| QString | toString(QStringView format) const |
| QString | toString(Qt::DateFormat format = Qt::TextDate) const |
| QString | toString(const QString &format) const |
| QString | toString(QStringView format, QCalendar cal) const |
| int | weekNumber(int *yearNumber = nullptr) const |
| int | year(QCalendar cal) const |
| int | year() const |
Statische öffentliche Mitglieder
| QDate | currentDate() |
| QDate | fromJulianDay(qint64 jd) |
(since 6.4) QDate | fromStdSysDays(const std::chrono::sys_days &days) |
| QDate | fromString(const QString &string, const QString &format, int baseYear, QCalendar cal) |
(since 6.0) QDate | fromString(QStringView string, Qt::DateFormat format = Qt::TextDate) |
| QDate | fromString(const QString &string, Qt::DateFormat format = Qt::TextDate) |
(since 6.0) QDate | fromString(QStringView string, QStringView format, QCalendar cal) |
(since 6.7) QDate | fromString(QStringView string, QStringView format, int baseYear = QLocale::DefaultTwoDigitBaseYear) |
(since 6.0) QDate | fromString(const QString &string, QStringView format, QCalendar cal) |
(since 6.7) QDate | fromString(const QString &string, QStringView format, int baseYear = QLocale::DefaultTwoDigitBaseYear) |
| QDate | fromString(const QString &string, const QString &format, QCalendar cal) |
(since 6.7) QDate | fromString(const QString &string, const QString &format, int baseYear = QLocale::DefaultTwoDigitBaseYear) |
(since 6.7) QDate | fromString(QStringView string, QStringView format, int baseYear, QCalendar cal) |
(since 6.0) QDate | fromString(const QString &string, QStringView format, int baseYear, QCalendar cal) |
| bool | isLeapYear(int year) |
| bool | isValid(int year, int month, int day) |
Verwandte Nicht-Mitglieder
| bool | operator!=(const QDate &lhs, const QDate &rhs) |
(since 6.11) QDate & | operator++(QDate &date) |
(since 6.11) QDate | operator++(QDate &date, int) |
(since 6.11) QDate & | operator--(QDate &date) |
(since 6.11) QDate | operator--(QDate &date, int) |
| bool | operator<(const QDate &lhs, const QDate &rhs) |
| QDataStream & | operator<<(QDataStream &out, QDate date) |
| bool | operator<=(const QDate &lhs, const QDate &rhs) |
| bool | operator==(const QDate &lhs, const QDate &rhs) |
| bool | operator>(const QDate &lhs, const QDate &rhs) |
| bool | operator>=(const QDate &lhs, const QDate &rhs) |
| QDataStream & | operator>>(QDataStream &in, QDate &date) |
Ausführliche Beschreibung
Ein QDate-Objekt repräsentiert einen bestimmten Tag, unabhängig vom Kalender, der Ländereinstellung oder anderen Einstellungen, die bei seiner Erstellung verwendet oder vom System bereitgestellt wurden. Es kann das Jahr, den Monat und den Tag des Monats angeben, die den Tag in Bezug auf den proleptischen gregorianischen Kalender oder einen beliebigen als „ QCalendar “-Objekt bereitgestellten Kalender darstellen. QDate-Objekte sollten eher als Wert als per Referenz an `const` übergeben werden; sie verpacken lediglich ` qint64`.
Ein QDate-Objekt wird typischerweise durch die explizite Angabe der Jahres-, Monats- und Tageszahlen erstellt. Beachten Sie, dass QDate Jahreszahlen unter 100 so interpretiert, wie sie angegeben werden, d. h. als die Jahre 1 bis 99, ohne einen Versatz hinzuzufügen. Die statische Funktion ` currentDate()` erstellt ein QDate-Objekt, das das von der Systemuhr gelesene Datum enthält. Ein explizites Datum kann auch mit ` setDate()` festgelegt werden. Die Funktion ` fromString()` gibt ein `QDate`-Objekt zurück, das auf einer Zeichenkette und einem Datumsformat basiert, das zur Interpretation des Datums in der Zeichenkette verwendet wird.
Die Funktionen ` year()`, ` month()` und ` day()` ermöglichen den Zugriff auf die Jahres-, Monats- und Tageszahlen. Wenn mehr als einer dieser Werte benötigt wird, ist es effizienter, ` QCalendar::partsFromDate()` aufzurufen, um wiederholte (möglicherweise aufwendige) Kalenderberechnungen zu vermeiden.
Außerdem stehen die Funktionen „ dayOfWeek()“ und „ dayOfYear()“ zur Verfügung. Die gleichen Informationen werden im Textformat von „ toString()“ bereitgestellt. „ QLocale “ kann die Tagesnummern den Namen zuordnen, „ QCalendar “ kann die Monatsnummern den Namen zuordnen.
QDate bietet einen vollständigen Satz von Operatoren zum Vergleichen zweier QDate-Objekte, wobei kleiner „früher“ und größer „später“ bedeutet.
Mit addDays() können Sie ein Datum um eine bestimmte Anzahl von Tagen erhöhen (oder verringern). Ebenso können Sie addMonths() und addYears() verwenden. Die Funktion daysTo() gibt die Anzahl der Tage zwischen zwei Daten zurück.
Die Funktionen ` daysInMonth()` und ` daysInYear()` geben jeweils an, wie viele Tage der Monat bzw. das Jahr dieses Datums umfasst. Die Funktion ` isLeapYear()` gibt an, ob ein Datum in einem Schaltjahr liegt. Auch ` QCalendar ` kann diese Information liefern, in manchen Fällen sogar bequemer.
Anmerkungen
Hinweis: Alle Konvertierungen in und aus Zeichenfolgenformaten erfolgen unter Verwendung der C-Locale. Informationen zu lokalisierten Konvertierungen finden Sie unter QLocale.
Im gregorianischen Kalender gibt es kein Jahr 0. Datumsangaben für dieses Jahr gelten als ungültig. Das Jahr -1 ist das Jahr „1 vor Christus“ oder „1 vor unserer Zeitrechnung“. Der Tag vor dem 1. Januar 1 u. Z., QDate(1, 1, 1), ist der 31. Dezember 1 v. Z., QDate(-1, 12, 31). Verschiedene andere Kalender verhalten sich ähnlich; siehe QCalendar::hasYearZero().
Bereich gültiger Datumsangaben
Daten werden intern als modifizierte julianische Tageszahl gespeichert, eine ganzzahlige Zählung jedes Tages in einem zusammenhängenden Bereich, wobei der 24. November 4714 v. u. Z. im gregorianischen Kalender dem julianischen Tag 0 entspricht (1. Januar 4713 v. u. Z. im julianischen Kalender). Dies ist nicht nur eine effiziente und genaue Methode zur Speicherung eines absoluten Datums, sondern eignet sich auch zur Umrechnung eines Datums in andere Kalendersysteme wie den hebräischen, islamischen oder chinesischen Kalender. Für die Zwecke von QDate werden julianische Tage um Mitternacht abgegrenzt, und für die von „ QDateTime “ in der von „datetime“ verwendeten Zeitzone. (Dies weicht von der formalen Definition ab, die julianische Tage um 12 Uhr mittags UTC abgrenzt.) Die julianische Tageszahl kann mit „ QDate::toJulianDay()“ abgerufen und mit „ QDate::fromJulianDay()“ gesetzt werden.
Der Bereich der Julian-Tage-Zahlen, den QDate darstellen kann, ist aus technischen Gründen auf den Bereich zwischen -784350574879 und 784354017364 beschränkt, was einem Zeitraum von vor 2 Milliarden v. Chr. bis nach 2 Milliarden n. Chr. entspricht. Dieser Bereich ist mehr als siebenmal so groß wie der Bereich von Datumsangaben, den ein „ QDateTime “ darstellen kann.
Siehe auch QTime, QDateTime, QCalendar, QDateTime::YearRange, QDateEdit, QDateTimeEdit und QCalendarWidget.
Dokumentation zu den Member-Funktionen
[constexpr] QDate::QDate()
Erzeugt ein Null-Datum. Null-Daten sind ungültig.
Siehe auch isNull() und isValid().
[constexpr noexcept, since 6.4] QDate::QDate(std::chrono::year_month_day date)
[constexpr noexcept, since 6.4] QDate::QDate(std::chrono::year_month_day_last date)
[constexpr noexcept, since 6.4] QDate::QDate(std::chrono::year_month_weekday date)
[constexpr noexcept, since 6.4] QDate::QDate(std::chrono::year_month_weekday_last date)
Erstellt ein ` QDate `-Objekt, das dasselbe Datum wie ` date` darstellt. Dies ermöglicht eine einfache Interoperabilität zwischen den Kalenderklassen der Standardbibliothek und den Datums- und Uhrzeitklassen von Qt.
Beispiel:
// 23 April 2012:
QDate date = std::chrono::year_month_day(std::chrono::year(2012),
std::chrono::month(4),
std::chrono::day(23));
// Same, under `using std::chrono` convenience:
QDate dateWithLiterals1 = 23d / April / 2012y;
QDate dateWithLiterals2 = 2012y / April / 23;
// Last day of February 2000
QDate lastDayFeb2020 = 2000y / February / last;
// First Monday of January 2020:
QDate firstMonday = 2020y / January / Monday[0];
// Last Monday of January 2020:
QDate lastMonday = 2020y / January / Monday[last];Hinweis: Im Gegensatz zu ` QDate` enthalten `std::chrono::year` und die zugehörigen Klassen das Jahr Null. Das bedeutet: Liegt ` date ` im Jahr Null oder davor, hat das resultierende ` QDate `-Objekt ein um eins geringeres Jahr als das von ` date` angegebene.
Hinweis: Diese Funktion erfordert C++20.
Diese Funktionen wurden in Qt 6.4 eingeführt.
QDate::QDate(int y, int m, int d)
Erstellt ein Datum mit dem Jahr y, dem Monat m und dem Tag d.
Das Datum wird nach dem gregorianischen Kalender interpretiert. Ist das angegebene Datum ungültig, wird das Datum nicht gesetzt und isValid() gibt false zurück.
Warnung: Die Jahre 1 bis 99 werden unverändert interpretiert. Das Jahr 0 ist ungültig.
Siehe auch „ isValid()“ und „ QCalendar::dateFromParts()“.
QDate QDate::addDays(qint64 ndays) const
Gibt ein „ QDate “-Objekt zurück, das einen Datums ndays enthält, der nach dem Datum dieses Objekts liegt (oder davor, wenn „ ndays “ negativ ist).
Gibt ein Null-Datum zurück, wenn das aktuelle Datum ungültig ist oder das neue Datum außerhalb des zulässigen Bereichs liegt.
Siehe auch „ addMonths()“, „ addYears()“ und „ daysTo()“.
[since 6.4] QDate QDate::addDuration(std::chrono::days ndays) const
Gibt ein „ QDate “-Objekt zurück, das ein Datum ndays enthält, das nach dem Datum dieses Objekts liegt (oder davor, wenn ndays negativ ist).
Gibt ein Null-Datum zurück, wenn das aktuelle Datum ungültig ist oder das neue Datum außerhalb des zulässigen Bereichs liegt.
Hinweis: Das Addieren von Zeiträumen, die in „ std::chrono::months “ oder „ std::chrono::years “ ausgedrückt sind, führt nicht zu demselben Ergebnis wie bei Verwendung von „ addMonths()“ oder „ addYears()“. Bei ersteren handelt es sich um feste Zeiträume, die in Bezug auf das Sonnenjahr berechnet werden; letztere verwenden die Definitionen von Monaten und Jahren des gregorianischen Kalenders.
Hinweis: Diese Funktion erfordert C++20.
Diese Funktion wurde in Qt 6.4 eingeführt.
Siehe auch addMonths(), addYears() und daysTo().
QDate QDate::addMonths(int nmonths, QCalendar cal) const
Gibt ein „ QDate “-Objekt zurück, das ein Datums nmonths enthält, das nach dem Datum dieses Objekts liegt (oder davor, wenn „ nmonths “ negativ ist).
Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender.
Hinweis: Wenn die Kombination aus Tag und Monat am Ende des resultierenden Monats/Jahres nicht existiert, gibt diese Funktion das späteste gültige Datum im ausgewählten Monat zurück.
Siehe auch „ addDays()“ und „ addYears()“.
QDate QDate::addMonths(int nmonths) const
Diese Funktion überlädt die Funktion „ QDate::addMonths()“.
QDate QDate::addYears(int nyears, QCalendar cal) const
Gibt ein „ QDate “-Objekt zurück, das ein Datums nyears enthält, das nach dem Datum dieses Objekts liegt (oder davor, wenn „ nyears “ negativ ist).
Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender.
Hinweis: Wenn die Kombination aus Tag und Monat am Ende des resultierenden Jahres nicht existiert (z. B. im gregorianischen Kalender, wenn das Datum der 29. Februar war und das Zieljahr kein Schaltjahr ist), gibt diese Funktion das späteste gültige Datum im angegebenen Monat zurück (im Beispiel den 28. Februar).
Siehe auch addDays() und addMonths().
QDate QDate::addYears(int nyears) const
Diese Funktion überlädt die Funktion „ QDate::addYears()“.
[static] QDate QDate::currentDate()
Gibt das aktuelle Datum der Systemuhr zurück.
Siehe auch QTime::currentTime() und QDateTime::currentDateTime().
int QDate::day(QCalendar cal) const
Gibt den Tag des Monats für dieses Datum zurück.
Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender (bei dem der Rückgabewert zwischen 1 und 31 liegt). Gibt 0 zurück, wenn das Datum ungültig ist.
Siehe auch year(), month(), dayOfWeek() und QCalendar::partsFromDate().
int QDate::day() const
Diese Funktion überlädt die Funktion „ QDate::day()“.
int QDate::dayOfWeek(QCalendar cal) const
Gibt den Wochentag (1 = Montag bis 7 = Sonntag) für dieses Datum zurück.
Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender. Gibt 0 zurück, wenn das Datum ungültig ist. Einige Kalender weisen Werten größer als 7 möglicherweise eine besondere Bedeutung zu (z. B. Schaltstage).
Siehe auch day(), dayOfYear(), QCalendar::dayOfWeek() und Qt::DayOfWeek.
int QDate::dayOfWeek() const
Diese Funktion überlädt die Funktion „ QDate::dayOfWeek()“.
int QDate::dayOfYear(QCalendar cal) const
Gibt den Tag des Jahres (1 für den ersten Tag) für dieses Datum zurück.
Verwendet „ cal “ als Kalender, sofern dieser angegeben ist, andernfalls den gregorianischen Kalender. Gibt 0 zurück, wenn entweder das Datum oder der erste Tag des Jahres ungültig ist.
Siehe auch „ day()“, „ dayOfWeek()“ und „ QCalendar::daysInYear()“.
int QDate::dayOfYear() const
Diese Funktion überlädt die Funktion „ QDate::dayOfYear()“.
int QDate::daysInMonth(QCalendar cal) const
Gibt die Anzahl der Tage im Monat für dieses Datum zurück.
Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender (bei dem das Ergebnis zwischen 28 und 31 liegt). Gibt 0 zurück, wenn das Datum ungültig ist.
Siehe auch day(), daysInYear(), QCalendar::daysInMonth(), QCalendar::maximumDaysInMonth() und QCalendar::minimumDaysInMonth().
int QDate::daysInMonth() const
Diese Funktion überlädt die Funktion „ QDate::daysInMonth()“.
int QDate::daysInYear(QCalendar cal) const
Gibt die Anzahl der Tage im Jahr für dieses Datum zurück.
Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender (wobei das Ergebnis 365 oder 366 beträgt). Gibt 0 zurück, wenn das Datum ungültig ist.
Siehe auch day(), daysInMonth(), QCalendar::daysInYear() und QCalendar::maximumMonthsInYear().
int QDate::daysInYear() const
Diese Funktion überlädt die Funktion „ QDate::daysInYear()“.
qint64 QDate::daysTo(QDate d) const
Gibt die Anzahl der Tage von diesem Datum bis zum d zurück.
Dies entspricht „ d.toJulianDay() - toJulianDay() “. Das Ergebnis ist negativ, wenn „ d “ vor diesem Datum liegt. Gibt 0 zurück, wenn eines der beiden Datumsangaben ungültig ist.
Beispiel:
QDate d1(1995, 5, 17); // May 17, 1995
QDate d2(1995, 5, 20); // May 20, 1995
d1.daysTo(d2); // returns 3
d2.daysTo(d1); // returns -3Siehe auch ` addDays()`.
QDateTime QDate::endOfDay(const QTimeZone &zone) const
Gibt den Zeitpunkt des Tagesendes zurück.
Wann ein Tag endet, hängt davon ab, wie die Zeit angegeben wird: Für Personen in westlicheren Zeitzonen beginnt und endet jeder Tag früher, für Personen in östlicheren Zeitzonen später. Die zu verwendende Zeitdarstellung kann durch ein optionales Zeit zone angegeben werden. Die Standardzeitdarstellung ist die lokale Systemzeit.
Normalerweise liegt das Ende des Tages eine Millisekunde vor Mitternacht, 24:00: Wenn jedoch ein Zeitzonenwechsel dazu führt, dass das angegebene Datum diesen Zeitpunkt überspringt (z. B. bei der Sommerzeitumstellung, bei der 23:00 Uhr und die folgende Stunde übersprungen werden), wird der tatsächlich späteste Zeitpunkt des Tages zurückgegeben. Dies kann nur auftreten, wenn die Zeitdarstellung eine Zeitzone oder die Ortszeit ist.
Wenn „ zone “ einen „timeSpec()“-Wert von „ Qt::OffsetFromUTC “ oder „ Qt::UTC “ hat, weist die Zeitdarstellung keine Übergänge auf, sodass das Ende des Tages „ QTime “ (23, 59, 59, 999) ist.
In dem seltenen Fall, dass ein Datum vollständig übersprungen wurde (dies geschieht, wenn eine Zeitzone östlich der internationalen Datumsgrenze auf eine Lage westlich davon wechselt), ist der Rückgabewert ungültig. Die Übergabe einer ungültigen Zeitzone als zone führt ebenfalls zu einem ungültigen Ergebnis, ebenso wie Datumsangaben, die außerhalb des durch QDateTime darstellbaren Bereichs liegen.
Siehe auch startOfDay().
[since 6.5] QDateTime QDate::endOfDay() const
Diese Funktion überlädt die Funktion „ QDate::endOfDay()“.
Diese Funktion wurde in Qt 6.5 eingeführt.
[static constexpr] QDate QDate::fromJulianDay(qint64 jd)
Konvertiert den julianischen Tag jd in einen QDate.
Siehe auch toJulianDay().
[static constexpr noexcept, since 6.4] QDate QDate::fromStdSysDays(const std::chrono::sys_days &days)
Gibt ein ` QDate ` zurück, das days Tage nach dem 1. Januar 1970 (der UNIX-Epoche) liegt. Ist ` days ` negativ, liegt das zurückgegebene Datum vor der Epoche.
Hinweis: Diese Funktion erfordert C++20.
Diese Funktion wurde in Qt 6.4 eingeführt.
Siehe auch „ toStdSysDays()“.
[static] QDate QDate::fromString(const QString &string, const QString &format, int baseYear, QCalendar cal)
Gibt den durch die Zeichenfolge „ string “ dargestellten „ QDate “ unter Verwendung der angegebenen „ format “ zurück oder ein ungültiges Datum, falls die Zeichenfolge nicht geparst werden kann.
Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender. Die Wertebereiche in den nachstehenden Formatbeschreibungen gelten für Letzteren; sie können bei anderen Kalendern abweichen.
Für das Format können folgende Ausdrücke verwendet werden:
| Ausdruck | Ausgabe |
|---|---|
| d | Der Tag als Zahl ohne führende Null (1 bis 31) |
| dd | Der Tag als Zahl mit führender Null (01 bis 31) |
| ddd | Die abgekürzte Tagesbezeichnung („Mo“ bis „So“). |
| dddd | Der vollständige Name des Tages („Montag“ bis „Sonntag“). |
| M | Der Monat als Zahl ohne führende Null (1 bis 12) |
| MM | Der Monat als Zahl mit führender Null (01 bis 12) |
| MMM | Die abgekürzte Monatsbezeichnung („Jan“ bis „Dec“). |
| MMMM | Der vollständige Monatsname („Januar“ bis „Dezember“). |
| yy | Das Jahr als zweistellige Zahl (00 bis 99) |
| yyyy | Das Jahr als Zahl, bei Bedarf mit Nullen auf mindestens vier Stellen aufgefüllt. Ein vorangestelltes Minuszeichen wird akzeptiert, um ein negatives Jahr darzustellen. Bei mehr als vier Stellen ist ein Pluszeichen erforderlich. |
Hinweis: Tages- und Monatsnamen müssen in Englisch (Locale „C“) angegeben werden. Wenn lokalisierte Monats- und Tagesnamen erkannt werden sollen, verwenden Sie ` QLocale::system().toDate()`.
Jede nicht leere Zeichenfolge, die in einfache Anführungszeichen eingeschlossen ist, wird ebenfalls (ohne die Anführungszeichen) als Text behandelt und nicht als Ausdruck interpretiert. Zwei aufeinanderfolgende einfache Anführungszeichen („''“) werden als ein einfaches Anführungszeichen interpretiert, das mit der Eingabe abgeglichen werden soll, und nicht als Beginn oder Ende einer wörtlichen Zeichenfolge. Alle anderen Eingabezeichen werden als wörtlicher Text behandelt, der mit der Eingabezeichenfolge abgeglichen werden soll. Zum Beispiel:
Wird das Format nicht eingehalten, wird ein ungültiger „ QDate “ zurückgegeben.
Wenn numerische Felder nebeneinander stehen und keine Trennzeichen vorhanden sind, um die Ziffernfolgen zu unterbrechen, kann es zu Unklarheiten kommen, ob einige Felder, die einstellig sein dürfen, zwei Ziffern verwenden (da der darzustellende Wert größer als 9 ist). Wenn die Zuweisung von zwei Ziffern zu einem solchen Feld zu wenige Ziffern für andere Felder übrig lassen würde und der einstellige Wert mit anderen Feldern übereinstimmt, kann diese Mehrdeutigkeit aufgelöst werden. Andernfalls (wenn mehr als ein Feld nur eine Ziffer haben darf und Ziffern übrig blieben, wenn jedes Feld nur eine Ziffer bekäme) wird eine Lösung bevorzugt, bei der den früheren Feldern zusätzliche Ziffern zugewiesen werden, anstatt den späteren Feldern, vorausgesetzt, die Daten bleiben konsistent. Zum Beispiel:
Für jedes Feld, das in dem Format nicht dargestellt wird, gelten die folgenden Standardwerte:
| Feld | Standardwert |
|---|---|
| Jahr | baseYear (oder 1900) |
| Monat | 1 (Januar) |
| Tag | 1 |
Wenn „ format “ nur die letzten beiden Ziffern eines Jahres angibt, werden zunächst die 100 Jahre, beginnend mit „ baseYear “, als Kandidaten berücksichtigt. Vor Version 6.7 gab es keinen Parameter „ baseYear “, und es wurde immer das Jahr 1900 verwendet. Dies ist die Standardeinstellung für „ baseYear “, wobei ein Jahr zwischen diesem Zeitpunkt und 1999 ausgewählt wird. Wenn beispielsweise 1976 als „ baseYear “ übergeben wird, wird ein Jahr zwischen 1976 und 2075 ausgewählt. Wenn das Format auch Monat, Tag (des Monats) und Wochentag enthält, reichen diese Angaben aus, um das Jahrhundert zu implizieren. In einem solchen Fall wird ein passendes Datum in dem Jahrhundert ausgewählt, das dem durch „ baseYear “ angegebenen am nächsten liegt, wobei spätere Daten den Vorrang vor früheren haben. Weitere Details finden Sie unter QCalendar::matchCenturyToWeekday() und Date ambiguities.
Die folgenden Beispiele veranschaulichen die Standardwerte:
QDate::fromString("1.30", "M.d"); // January 30 1900
QDate::fromString("20000110", "yyyyMMdd"); // January 10, 2000
QDate::fromString("20000110", "yyyyMd"); // January 10, 2000Hinweis: Wird ein Formatzeichen häufiger wiederholt als der längste Ausdruck in der obigen Tabelle, der dieses Zeichen verwendet, wird dieser Teil des Formats als mehrere Ausdrücke ohne Trennzeichen zwischen ihnen gelesen;dabei gilt der oben genannte längste Ausdruck, der möglicherweise so oft wiederholt wird, wie es Kopien davon gibt, und der mit einem Rest endet, der ein kürzerer Ausdruck sein kann. So würde „ 'MMMMMMMMMM' “ mit „ "MayMay05" “ übereinstimmen und den Monat auf Mai setzen. Ebenso würde „ 'MMMMMM' “ mit „ "May08" “ übereinstimmen und dies als inkonsistent erkennen, was zu einem ungültigen Datum führt.
Mehrdeutigkeiten bei Datumsangaben
Verschiedene Kulturen verwenden unterschiedliche Datumsformate, was dazu führen kann, dass Benutzer die Reihenfolge der Datumsangaben verwechseln. Beispielsweise könnte „ "Wed 28-Nov-01" “ entweder den 1. November 2028 oder den 28. November 2001 bedeuten (beides sind zufällig Mittwochs). Bei Verwendung des Formats „ "ddd yy-MMM-dd" “ wird es auf die erste Weise interpretiert, bei „ "ddd dd-MMM-yy" “ auf die zweite. Was der Benutzer jedoch gemeint hat, hängt möglicherweise eher davon ab, wie er Datumsangaben normalerweise schreibt, als vom Format, das der Code erwartet hat.
Im oben betrachteten Beispiel wurden der Tag des Monats und ein zweistelliges Jahr verwechselt. Ähnliche Verwechslungen können durch die Vertauschung von Monat und Tag des Monats entstehen, wenn beide als Zahlen angegeben werden. In diesen Fällen kann die Einbeziehung eines Feldes für den Wochentag im Datumsformat eine gewisse Redundanz schaffen, die dabei helfen kann, Fehler dieser Art zu erkennen. Wie im obigen Beispiel ist dies jedoch nicht immer wirksam: Die Vertauschung zweier Felder (oder ihrer Bedeutungen) kann zu Datumsangaben mit demselben Wochentag führen.
Die Einbeziehung eines Wochentags in das Format kann auch das Jahrhundert eines Datums klären, das nur mit den letzten beiden Ziffern des Jahres angegeben wurde. Leider kann diese Auflösung in Kombination mit einem Datum, bei dem der Benutzer (oder eine andere Datenquelle) zwei der Felder vertauscht hat, dazu führen, dass ein Datum gefunden wird, das zwar der Lesart des Formats entspricht, aber nicht das vom Verfasser beabsichtigte ist. Ebenso kann es, wenn der Benutzer bei einem ansonsten korrekten Datum lediglich den Wochentag falsch angibt, dazu führen, dass ein Datum in einem anderen Jahrhundert ermittelt wird. In jedem Fall kann die Ermittlung eines Datums in einem anderen Jahrhundert dazu führen, dass aus einem falsch eingegebenen Datum ein völlig anderes wird.
Der beste Weg, Datumsmehrdeutigkeiten zu vermeiden, ist die Verwendung vierstelliger Jahreszahlen und die Angabe der Monate mit ihrem Namen (ob vollständig oder abgekürzt), idealerweise über Elemente der Benutzeroberfläche, die dem Benutzer unmissverständlich klar machen, welchen Teil des Datums er gerade auswählt. Die Angabe eines Wochentags kann ebenfalls hilfreich sein, da sie die Möglichkeit bietet, die Konsistenz der Daten zu überprüfen. Wenn Daten vom Benutzer stammen und ein Format verwendet wird, das von einer vom Benutzer ausgewählten Ländereinstellung vorgegeben ist, empfiehlt es sich, ein langes Format zu verwenden, da kurze Formate häufiger zweistellige Jahreszahlen verwenden. Natürlich ist es nicht immer möglich, das Format zu kontrollieren – Daten können beispielsweise aus einer Quelle stammen, auf die Sie keinen Einfluss haben.
Aufgrund dieser möglichen Verwechslungsquellen – insbesondere wenn Sie nicht sicher sein können, dass ein eindeutiges Format verwendet wird – ist es wichtig zu überprüfen, ob das Ergebnis der Interpretation einer Zeichenkette als Datum nicht nur gültig, sondern auch für den Zweck, für den es bereitgestellt wurde, sinnvoll ist. Liegt das Ergebnis außerhalb eines Bereichs sinnvoller Werte, kann es sinnvoll sein, den Benutzer zu bitten, seine Datumsauswahl zu bestätigen, indem das aus der Zeichenkette ausgelesene Datum in einem langen Format angezeigt wird, das den Monatsnamen und das vierstellige Jahr enthält, damit er eventuelle Fehler leichter erkennen kann.
Siehe auch toString(), QDateTime::fromString(), QTime::fromString() und QLocale::toDate().
[static, since 6.0] QDate QDate::fromString(QStringView string, Qt::DateFormat format = Qt::TextDate)
Diese Funktion überlädt die Funktion „ QDate::fromString()“.
Diese Funktion wurde in Qt 6.0 eingeführt.
[static] QDate QDate::fromString(const QString &string, Qt::DateFormat format = Qt::TextDate)
Gibt das durch „ string “ dargestellte „ QDate “ unter Verwendung des angegebenen „ format “ zurück oder ein ungültiges Datum, falls die Zeichenkette nicht analysiert werden kann.
Hinweis zu „ Qt::TextDate “: Es werden nur englische Monatsnamen (z. B. „Jan“ in Kurzform oder „January“ in Langform) erkannt.
Dies ist eine überladene Funktion.
Siehe auch „ toString()“ und „ QLocale::toDate()“.
[static, since 6.0] QDate QDate::fromString(QStringView string, QStringView format, QCalendar cal)
Diese Funktion überlädt die Funktion „ QDate::fromString()“.
Diese Funktion wurde in Qt 6.0 eingeführt.
[static, since 6.7] QDate QDate::fromString(QStringView string, QStringView format, int baseYear = QLocale::DefaultTwoDigitBaseYear)
Verwendet ein standardmäßig konstruiertes ` QCalendar`.
Diese Funktion überlädt ` QDate::fromString()`.
Diese Funktion wurde in Qt 6.7 eingeführt.
[static, since 6.0] QDate QDate::fromString(const QString &string, QStringView format, QCalendar cal)
Diese Funktion überlädt die Funktion „ QDate::fromString()“.
Diese Funktion wurde in Qt 6.0 eingeführt.
[static, since 6.7] QDate QDate::fromString(const QString &string, QStringView format, int baseYear = QLocale::DefaultTwoDigitBaseYear)
Verwendet ein standardmäßig konstruiertes ` QCalendar`.
Diese Funktion überlädt ` QDate::fromString()`.
Diese Funktion wurde in Qt 6.7 eingeführt.
[static] QDate QDate::fromString(const QString &string, const QString &format, QCalendar cal)
Diese Funktion überlädt die Funktion „ QDate::fromString()“.
[static, since 6.7] QDate QDate::fromString(const QString &string, const QString &format, int baseYear = QLocale::DefaultTwoDigitBaseYear)
Verwendet ein standardmäßig konstruiertes ` QCalendar`.
Diese Funktion überlädt ` QDate::fromString()`.
Diese Funktion wurde in Qt 6.7 eingeführt.
[static, since 6.7] QDate QDate::fromString(QStringView string, QStringView format, int baseYear, QCalendar cal)
Diese Funktion überlädt die Funktion „ QDate::fromString()“.
Diese Funktion wurde in Qt 6.7 eingeführt.
[static, since 6.0] QDate QDate::fromString(const QString &string, QStringView format, int baseYear, QCalendar cal)
Diese Funktion überlädt die Funktion „ QDate::fromString()“.
Diese Funktion wurde in Qt 6.0 eingeführt.
void QDate::getDate(int *year, int *month, int *day) const
Extrahiert das Jahr, den Monat und den Tag des Datums und weist sie *year, *month und *day zu. Die Zeiger können null sein.
Gibt 0 zurück, wenn das Datum ungültig ist.
Hinweis: In Qt-Versionen vor 5.7 ist diese Funktion als nicht-const gekennzeichnet.
Siehe auch year(), month(), day(), isValid() und QCalendar::partsFromDate().
[static] bool QDate::isLeapYear(int year)
Gibt „ true “ zurück, wenn das angegebene Datum „ year “ im gregorianischen Kalender ein Schaltjahr ist; andernfalls wird „ false “ zurückgegeben.
Siehe auch QCalendar::isLeapYear().
[constexpr] bool QDate::isNull() const
Gibt „ true “ zurück, wenn das Datum null ist; andernfalls wird „ false “ zurückgegeben. Ein null-Datum ist ungültig.
Hinweis: Das Verhalten dieser Funktion entspricht dem von ` isValid()`.
Siehe auch isValid().
[constexpr] bool QDate::isValid() const
Gibt „ true “ zurück, wenn dieses Datum gültig ist; andernfalls wird „ false “ zurückgegeben.
Siehe auch isNull() und QCalendar::isDateValid().
[static] bool QDate::isValid(int year, int month, int day)
Gibt „ true “ zurück, wenn das angegebene Datum (year, month und day) im gregorianischen Kalender gültig ist; andernfalls wird „ false “ zurückgegeben.
Beispiel:
QDate::isValid(2002, 5, 17); // true
QDate::isValid(2002, 2, 30); // false (Feb 30 does not exist)
QDate::isValid(2004, 2, 29); // true (2004 is a leap year)
QDate::isValid(2000, 2, 29); // true (2000 is a leap year)
QDate::isValid(2006, 2, 29); // false (2006 is not a leap year)
QDate::isValid(2100, 2, 29); // false (2100 is not a leap year)
QDate::isValid(1202, 6, 6); // true (even though 1202 is pre-Gregorian)Diese Funktion überlädt „ QDate::isValid()“.
Siehe auch isNull(), setDate() und QCalendar::isDateValid().
int QDate::month(QCalendar cal) const
Gibt die Monatsnummer für das Datum zurück.
Nummeriert die Monate des Jahres beginnend mit 1 für den ersten Monat. Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender, für den die Monatsnummerierung wie folgt lautet:
- 1 = „Januar“
- 2 = „Februar“
- 3 = „März“
- 4 = „April“
- 5 = „Mai“
- 6 = „Juni“
- 7 = „Juli“
- 8 = „August“
- 9 = „September“
- 10 = „Oktober“
- 11 = „November“
- 12 = „Dezember“
Gibt 0 zurück, wenn das Datum ungültig ist. Beachten Sie, dass manche Kalender in manchen Jahren mehr als 12 Monate haben können.
Siehe auch year(), day() und QCalendar::partsFromDate().
int QDate::month() const
Diese Funktion überlädt die Funktion „ QDate::month()“.
bool QDate::setDate(int year, int month, int day)
Setzt diesen Wert so, dass er das Datum im gregorianischen Kalender mit den angegebenen Werten für „ year “, „ month “ und „ day “ darstellt. Gibt „true“ zurück, wenn das resultierende Datum gültig ist; andernfalls wird dieser Wert so gesetzt, dass er ein ungültiges Datum darstellt, und „false“ zurückgegeben.
Siehe auch isValid() und QCalendar::dateFromParts().
bool QDate::setDate(int year, int month, int day, QCalendar cal)
Setzt diesen Wert so, dass er das Datum im angegebenen Kalender cal mit den angegebenen Werten für year, month und day darstellt. Gibt „true“ zurück, wenn das resultierende Datum gültig ist; andernfalls wird dieser Wert so gesetzt, dass er ein ungültiges Datum darstellt, und „false“ zurückgegeben.
Siehe auch isValid() und QCalendar::dateFromParts().
QDateTime QDate::startOfDay(const QTimeZone &zone) const
Gibt den Beginn des Tages zurück.
Wann ein Tag beginnt, hängt davon ab, wie die Zeit angegeben wird: Für Personen in westlicheren Zeitzonen beginnt und endet jeder Tag früher, für Personen in östlicheren Zeitzonen später. Die zu verwendende Zeitdarstellung kann durch ein optionales Zeit zone angegeben werden. Die Standardzeitdarstellung ist die lokale Systemzeit.
Normalerweise ist der Beginn des Tages Mitternacht, 00:00 Uhr; wenn jedoch ein Zeitzonenwechsel dazu führt, dass das angegebene Datum diese Mitternacht überspringt (z. B. bei der Sommerzeitumstellung, bei der die erste Stunde des Tages übersprungen wird), wird der tatsächlich früheste Zeitpunkt des Tages zurückgegeben. Dies kann nur auftreten, wenn die Zeitdarstellung eine Zeitzone oder die Ortszeit ist.
Wenn „ zone “ einen „timeSpec()“-Wert von „ Qt::OffsetFromUTC “ oder „ Qt::UTC “ hat, weist die Zeitdarstellung keine Übergänge auf, sodass der Beginn des Tages bei „ QTime “ (0, 0) liegt.
Im seltenen Fall eines Datums, das vollständig übersprungen wurde (dies geschieht, wenn eine Zeitzone östlich der internationalen Datumsgrenze auf eine Lage westlich davon wechselt), ist der Rückgabewert ungültig. Die Übergabe einer ungültigen Zeitzone als „ zone “ führt ebenfalls zu einem ungültigen Ergebnis, ebenso wie Datumsangaben, die außerhalb des durch „ QDateTime “ darstellbaren Bereichs beginnen.
Siehe auch endOfDay().
[since 6.5] QDateTime QDate::startOfDay() const
Diese Funktion überlädt die Funktion „ QDate::startOfDay()“.
Diese Funktion wurde in Qt 6.5 eingeführt.
[constexpr] qint64 QDate::toJulianDay() const
Wandelt das Datum in einen julianischen Tag um.
Siehe auch fromJulianDay().
[constexpr noexcept] std::chrono::sys_days QDate::toStdSysDays() const
Gibt die Anzahl der Tage zwischen dem 1. Januar 1970 (der UNIX-Epoche) und diesem Datum zurück, dargestellt als „ std::chrono::sys_days “-Objekt. Liegt dieses Datum vor der Epoche, ist die Anzahl der Tage negativ.
Hinweis: Diese Funktion erfordert C++20.
Siehe auch ` fromStdSysDays()` und ` daysTo()`.
QString QDate::toString(const QString &format, QCalendar cal) const
QString QDate::toString(QStringView format, QCalendar cal) const
Gibt das Datum als Zeichenkette zurück. Der Parameter „ format “ bestimmt das Format der Ergebniszeichenkette. Wird „ cal “ angegeben, legt dieser Parameter den Kalender fest, der zur Darstellung des Datums verwendet wird; standardmäßig ist der gregorianische Kalender eingestellt. Vor Qt 5.14 gab es keinen Parameter „ cal “ und es wurde immer der gregorianische Kalender verwendet.
Folgende Ausdrücke können im Parameter „ format “ verwendet werden:
| Ausdruck | Ausgabe |
|---|---|
| d | Der Tag als Zahl ohne führende Null (1 bis 31) |
| dd | Der Tag als Zahl mit führender Null (01 bis 31) |
| ddd | Die abgekürzte Tagesbezeichnung („Mo“ bis „So“). |
| dddd | Der vollständige Name des Tages („Montag“ bis „Sonntag“). |
| M | Der Monat als Zahl ohne führende Null (1 bis 12) |
| MM | Der Monat als Zahl mit führender Null (01 bis 12) |
| MMM | Die abgekürzte Monatsbezeichnung („Jan“ bis „Dec“). |
| MMMM | Der vollständige Monatsname („Januar“ bis „Dezember“). |
| yy | Das Jahr als zweistellige Zahl (00 bis 99) |
| yyyy | Das vollständige Jahr als Zahl, gegebenenfalls auf mindestens vier Ziffern aufgefüllt. Ist das Jahr negativ, wird ein Minuszeichen vorangestellt. Benötigt ein positives Jahr mehr als vier Ziffern, wird ein Pluszeichen vorangestellt. |
Jede nicht leere Zeichenfolge, die in einfache Anführungszeichen gesetzt ist, wird unverändert in die Ausgabekette übernommen (ohne die Anführungszeichen), selbst wenn sie Formatierungszeichen enthält. Zwei aufeinanderfolgende einfache Anführungszeichen („''“) werden in der Ausgabe durch ein einzelnes einfaches Anführungszeichen ersetzt, anstatt eine wörtliche Zeichenfolge zu beginnen oder zu beenden. Alle anderen Zeichen in der Formatzeichenfolge werden unverändert in die Ausgabekette übernommen.
Formate ohne Trennzeichen (z. B. „ddMM“) werden unterstützt, müssen jedoch mit Vorsicht verwendet werden, da die resultierenden Zeichenfolgen nicht immer zuverlässig lesbar sind (wenn beispielsweise „dM“ „212“ ergibt, könnte dies sowohl den 2. Dezember als auch den 21. Februar bedeuten).
Beispiele für Formatzeichenfolgen (unter der Annahme, dass das Datum „ QDate “ der 20. Juli 1969 ist):
| Format | Ergebnis |
|---|---|
| dd.MM.yyyy | 20.07.1969 |
| ddd MMMM d yy | So, 20. Juli 69 |
| „Der Tag ist“ dddd | Der Tag ist Sonntag |
Ist das Datum/die Uhrzeit ungültig, wird eine leere Zeichenkette zurückgegeben.
Hinweis: Tages- und Monatsnamen werden in Englisch (C-Locale) angegeben. Um lokalisierte Monats- und Tagesnamen zu erhalten, verwenden Sie QLocale::system().toString().
Hinweis: Wenn ein Formatzeichen öfter wiederholt wird als der längste Ausdruck in der obigen Tabelle, der es verwendet, wird dieser Teil des Formats als mehrere Ausdrücke ohne Trennzeichen zwischen ihnen gelesen; der längste davon, möglicherweise so oft wiederholt, wie es Kopien davon gibt, endet mit einem Rest, der ein kürzerer Ausdruck sein kann. So führt „ 'MMMMMMMMMM' “ für ein Datum im Mai zu „ "MayMay05" “ in der Ausgabe.
Siehe auch fromString(), QDateTime::toString(), QTime::toString() und QLocale::toString().
QString QDate::toString(QStringView format) const
Diese Funktion überlädt die Funktion „ QDate::toString()“.
QString QDate::toString(Qt::DateFormat format = Qt::TextDate) const
Gibt das Datum als Zeichenfolge zurück. Der Parameter „ format “ bestimmt das Format der Zeichenfolge.
Wenn der Parameter „ format “ den Wert „ Qt::TextDate “ hat, wird die Zeichenkette standardmäßig formatiert. Die Namen der Tage und Monate werden auf Englisch angezeigt. Ein Beispiel für diese Formatierung ist „Sat May 20 1995“. Informationen zur lokalisierten Formatierung finden Sie unter „ QLocale::toString()“.
Wenn der Parameter ` format ` auf ` Qt::ISODate` gesetzt ist, entspricht das Format der erweiterten ISO 8601-Spezifikation für die Darstellung von Datum und Uhrzeit in der Form `yyyy-MM-dd`, wobei `yyyy` das Jahr, `MM` den Monat des Jahres (zwischen 01 und 12) und dd der Tag des Monats zwischen 01 und 31 ist.
Wenn der Parameter ` format ` den Wert ` Qt::RFC2822Date` hat, wird die Zeichenkette RFC-2822 -konform formatiert. Ein Beispiel für diese Formatierung ist „20 May 1995“.
Ist das Datum ungültig, wird eine leere Zeichenkette zurückgegeben.
Warnung: Das Format „ Qt::ISODate “ ist nur für Jahreszahlen im Bereich von 0 bis 9999 gültig.
Diese Funktion überlädt QDate::toString().
Siehe auch „ fromString()“ und „ QLocale::toString()“.
QString QDate::toString(const QString &format) const
Diese Funktion überlädt die Funktion „ QDate::toString()“.
int QDate::weekNumber(int *yearNumber = nullptr) const
Gibt die Wochennummer nach ISO 8601 zurück (1 bis 53).
Gibt 0 zurück, wenn das Datum ungültig ist. Andernfalls wird die Wochennummer für das Datum zurückgegeben. Wenn „ yearNumber “ nicht auf „ nullptr “ gesetzt ist (Standardeinstellung), wird das Jahr als *yearNumber* gespeichert.
Gemäß ISO 8601 gehört jede Woche zu dem Jahr, zu dem die meisten ihrer Tage im gregorianischen Kalender gehören. Da die Woche nach ISO 8601 am Montag beginnt, ist dies das Jahr, in das der Donnerstag der Woche fällt. Die meisten Jahre haben 52 Wochen, manche jedoch 53.
Hinweis: * yearNumber ist nicht immer gleichbedeutend mit year(). Beispielsweise hat der 1. Januar 2000 die Wochennummer 52 im Jahr 1999, und der 31. Dezember 2002 hat die Wochennummer 1 im Jahr 2003.
Siehe auch isValid().
int QDate::year(QCalendar cal) const
Gibt das Jahr dieses Datums zurück.
Verwendet „ cal “ als Kalender, sofern angegeben, andernfalls den gregorianischen Kalender.
Gibt 0 zurück, wenn das Datum ungültig ist. Bei manchen Kalendern können alle Daten vor ihrem ersten Jahr ungültig sein.
Bei Verwendung eines Kalenders mit einem Jahr 0 sollte mit ` isValid()` überprüft werden, ob der Rückgabewert 0 ist. Solche Kalender verwenden negative Jahreszahlen auf naheliegende Weise, wobei dem Jahr 1 das Jahr 0 vorausgeht, dem wiederum das Jahr -1 und so weiter.
Einige Kalender haben zwar kein Jahr 0, verwenden jedoch eine konventionelle Nummerierung der Jahre vor ihrem ersten Jahr, wobei rückwärts von 1 gezählt wird. Im proleptischen gregorianischen Kalender beispielsweise werden aufeinanderfolgende Jahre vor 1 u. Z. (dem ersten Jahr) als 1 v. u. Z., 2 v. u. Z., 3 v. u. Z. usw. bezeichnet. Bei solchen Kalendern werden negative Jahreszahlen verwendet, um diese Jahre vor dem Jahr 1 zu kennzeichnen, wobei -1 das Jahr vor 1 bezeichnet.
Siehe auch month(), day(), QCalendar::hasYearZero(), QCalendar::isProleptic() und QCalendar::partsFromDate().
int QDate::year() const
Diese Funktion überlädt die Funktion „ QDate::year()“.
Verwandte Nicht-Mitglieder
[constexpr noexcept] bool operator!=(const QDate &lhs, const QDate &rhs)
Gibt „ true “ zurück, wenn „ lhs “ und „ rhs “ unterschiedliche Tage darstellen; andernfalls wird „ false “ zurückgegeben.
Siehe auch operator==().
[since 6.11] QDate &operator++(QDate &date)
Der Operator „ ++ “ fügt dem Datum „ date “ einen Tag hinzu und gibt eine Referenz auf das geänderte Datumobjekt zurück.
Diese Funktion wurde in Qt 6.11 eingeführt.
Siehe auch „ addDays()“ und „ operator--()“.
[since 6.11] QDate operator++(QDate &date, int)
Der Postfix-Operator „ ++ “ fügt einen Tag zu „ date “ hinzu und gibt eine Kopie von „ date “ mit dem vorherigen Datum zurück.
Diese Funktion wurde in Qt 6.11 eingeführt.
Siehe auch „ addDays()“ und „ operator--()“.
[since 6.11] QDate &operator--(QDate &date)
Der Operator mit dem Präfix „ -- “ zieht einen Tag von „ date “ ab und gibt eine Referenz auf das geänderte Datumsobjekt zurück.
Diese Funktion wurde in Qt 6.11 eingeführt.
Siehe auch „ addDays()“ und „ operator++()“.
[since 6.11] QDate operator--(QDate &date, int)
Der Postfix-Operator „ -- “ zieht einen Tag von „ date “ ab und gibt eine Kopie von „ date “ mit dem nächsten Datum zurück.
Diese Funktion wurde in Qt 6.11 eingeführt.
Siehe auch „ addDays()“ und „ operator++()“.
[constexpr noexcept] bool operator<(const QDate &lhs, const QDate &rhs)
Gibt „ true “ zurück, wenn „ lhs “ vor „ rhs “ liegt; andernfalls wird „ false “ zurückgegeben.
QDataStream &operator<<(QDataStream &out, QDate date)
Schreibt die „ date “ in den Stream „ out “.
Siehe auch „Serialisierung vonQt-Datentypen“.
[constexpr noexcept] bool operator<=(const QDate &lhs, const QDate &rhs)
Gibt „ true “ zurück, wenn „ lhs “ kleiner oder gleich „ rhs “ ist; andernfalls wird „ false “ zurückgegeben.
[constexpr noexcept] bool operator==(const QDate &lhs, const QDate &rhs)
Gibt „ true “ zurück, wenn „ lhs “ und „ rhs “ denselben Tag bezeichnen; andernfalls „ false “.
[constexpr noexcept] bool operator>(const QDate &lhs, const QDate &rhs)
Gibt „ true “ zurück, wenn „ lhs “ nach „ rhs “ liegt; andernfalls wird „ false “ zurückgegeben.
[constexpr noexcept] bool operator>=(const QDate &lhs, const QDate &rhs)
Gibt „ true “ zurück, wenn „ lhs “ größer oder gleich „ rhs “ ist; andernfalls wird „ false “ zurückgegeben.
QDataStream &operator>>(QDataStream &in, QDate &date)
Liest ein Datum aus dem Stream „ in “ in die Variable „ date “ ein.
Siehe auch „Serialisierung vonQt-Datentypen“.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.