Obsolete Members for <QtCompilerDetection>
Die folgenden Mitglieder der Klasse ` <QtCompilerDetection> ` sind veraltet. Sie werden bereitgestellt, um die Funktionsfähigkeit von altem Quellcode zu gewährleisten. Wir raten dringend davon ab, sie in neuem Code zu verwenden.
Makros
(deprecated) | Q_CC_INTEL |
(deprecated in 6.4) | Q_DECL_CONSTEXPR |
(deprecated in 5.15) | Q_DECL_FINAL |
(deprecated in 6.4) | Q_DECL_NOEXCEPT |
(deprecated in 6.4) | Q_DECL_NOEXCEPT_EXPR(x) |
(deprecated in 6.4) | Q_DECL_NOTHROW |
(deprecated in 5.15) | Q_DECL_OVERRIDE |
(deprecated in 6.4) | Q_DECL_RELAXED_CONSTEXPR |
Makro-Dokumentation
[deprecated] Q_CC_INTEL
Dieses Makro ist veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.
Dieses Makro war früher definiert, wenn die Anwendung mit dem alten Intel C++-Compiler für Linux, macOS oder Windows kompiliert wurde. Der neue oneAPI C++-Compiler ist lediglich eine Version von Clang und definiert dieses Makro daher nicht.
Siehe auch Q_CC_CLANG.
[deprecated in 6.4] Q_DECL_CONSTEXPR
Dieses Makro ist seit Version 6.4 veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.
Verwenden Sie stattdessen das Schlüsselwort „ constexpr “.
Dieses Makro kann verwendet werden, um Variablen zu deklarieren, die zur Kompilierungszeit erstellt werden sollen, oder um eine Inline-Funktion zu definieren, die zur Kompilierungszeit berechnet werden kann.
Siehe auch „ Q_DECL_RELAXED_CONSTEXPR “ und „ Q_DECL_CONSTEXPR_DTOR “.
[deprecated in 5.15] Q_DECL_FINAL
Dieses Makro ist seit Version 5.15 veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.
Dieses Makro kann verwendet werden, um eine überschreibende virtuelle Funktion oder eine Klasse gemäß der Java-Semantik als „final“ zu deklarieren. Weiter abgeleitete Klassen können diese virtuelle Funktion dann nicht mehr überschreiben bzw. von dieser Klasse nicht mehr erben.
Es wird zu „final“ erweitert.
Das Makro wird am Ende der Funktion platziert, in der Regel nach dem „ const “, sofern vorhanden:
// more-derived classes no longer permitted to override this:
virtual void final_func() final;Bei Klassen wird es vor dem ` : ` in der Klassendefinition platziert, sofern vorhanden:
class SomeClass final { // cannot be derived from
// ...
};Siehe auch ` Q_DECL_OVERRIDE`.
[deprecated in 6.4] Q_DECL_NOEXCEPT
Dieses Makro ist seit Version 6.4 veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.
Verwenden Sie stattdessen das Schlüsselwort „ noexcept “.
Dieses Makro kennzeichnet eine Funktion als „never throwing“. Sollte die Funktion dennoch einen Ausnahmestaat auslösen, ist das Verhalten definiert: std::terminate() wird aufgerufen.
Siehe auch „ Q_DECL_NOTHROW “ und „ Q_DECL_NOEXCEPT_EXPR()“.
[deprecated in 6.4] Q_DECL_NOEXCEPT_EXPR(x)
Dieses Makro ist seit Version 6.4 veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.
Verwenden Sie stattdessen das Schlüsselwort „ noexcept “.
Dieses Makro kennzeichnet eine Funktion als „non-throwing“, wenn x den Wert „ true “ hat. Sollte die Funktion dennoch einen Ausnahmebefehl auslösen, ist das Verhalten definiert: std::terminate() wird aufgerufen.
Siehe auch „ Q_DECL_NOTHROW “ und „ Q_DECL_NOEXCEPT “.
[deprecated in 6.4] Q_DECL_NOTHROW
Dieses Makro ist seit Version 6.4 veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.
Verwenden Sie stattdessen das Schlüsselwort „ noexcept “.
Dieses Makro kennzeichnet eine Funktion als eine, die unter keinen Umständen eine Ausnahme auslöst. Sollte die Funktion dennoch eine Ausnahme auslösen, ist das Verhalten undefiniert.
Siehe auch „ Q_DECL_NOEXCEPT “ und „ Q_DECL_NOEXCEPT_EXPR()“.
[deprecated in 5.15] Q_DECL_OVERRIDE
Dieses Makro ist seit Version 5.15 veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.
Dieses Makro kann verwendet werden, um eine überschreibende virtuelle Funktion zu deklarieren. Durch die Verwendung dieses Makros kann der Compiler einen Fehler ausgeben, wenn die überschreibende virtuelle Funktion tatsächlich nichts überschreibt.
Es wird zu „override“ expandiert.
Das Makro wird am Ende der Funktion platziert, in der Regel nach dem ` const`, falls vorhanden:
// generate error if this doesn't actually override anything:
virtual void override_func() override;Siehe auch ` Q_DECL_FINAL`.
[deprecated in 6.4] Q_DECL_RELAXED_CONSTEXPR
Dieses Makro ist seit Version 6.4 veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.
Verwenden Sie stattdessen das Schlüsselwort „ constexpr “.
Dieses Makro kann verwendet werden, um eine Inline-Funktion zu deklarieren, die gemäß den gelockerten Regeln aus C++14 zur Kompilierungszeit ausgewertet werden kann.
Siehe auch „ Q_DECL_CONSTEXPR “ und „ Q_DECL_CONSTEXPR_DTOR “.
© 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.