Obsolete Members for <QtCompilerDetection>

Die folgenden Mitglieder der Klasse <QtCompilerDetection> sind veraltet. Sie werden bereitgestellt, um alten Quellcode funktionsfähig zu halten. Wir raten dringend davon ab, sie in neuem Code zu verwenden.

Makros

(deprecated) Q_CC_INTEL
(deprecated in 6.4) Q_DECL_CONSTEXPR
(deprecated) 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) 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 wurde 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 nur ein Build von Clang und definiert daher dieses Makro nicht.

Siehe auch Q_CC_CLANG.

[deprecated in 6.4] Q_DECL_CONSTEXPR

Dieses Makro ist seit 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 Kompilierzeit konstruiert werden sollen, oder eine Inline-Funktion, die zur Kompilierzeit berechnet werden kann.

Siehe auch Q_DECL_RELAXED_CONSTEXPR.

[deprecated] Q_DECL_FINAL

Dieses Makro ist 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 als "final" zu deklarieren, mit Java-Semantik. Weiter abgeleitete Klassen können dann diese virtuelle Funktion nicht mehr außer Kraft setzen bzw. von dieser Klasse erben.

Es erweitert sich zu "final".

Das Makro steht am Ende der Funktion, normalerweise nach dem const, falls vorhanden:

    // more-derived classes no longer permitted to override this:
    virtual void MyWidget::paintEvent(QPaintEvent*) final;

Bei Klassen steht es vor dem : in der Klassendefinition, falls vorhanden:

    class QRect final { // cannot be derived from
        // ...
    };

Siehe auch Q_DECL_OVERRIDE.

[deprecated in 6.4] Q_DECL_NOEXCEPT

Dieses Makro ist seit 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 nie auslösend. Wenn die Funktion dennoch auslöst, 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 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 nicht auslösend, wenn x true ist. Wenn die Funktion dennoch auslöst, 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 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 nie auslösend, unter keinen Umständen. Wenn die Funktion dennoch auslöst, ist das Verhalten undefiniert.

Siehe auch Q_DECL_NOEXCEPT und Q_DECL_NOEXCEPT_EXPR().

[deprecated] Q_DECL_OVERRIDE

Dieses Makro ist veraltet. Wir raten dringend davon ab, es in neuem Code zu verwenden.

Dieses Makro kann verwendet werden, um eine überschreibende virtuelle Funktion zu deklarieren. Die Verwendung dieser Markierung ermöglicht es dem Compiler, einen Fehler zu erzeugen, wenn die überschreibende virtuelle Funktion in Wirklichkeit nichts überschreibt.

Es wird zu "override" erweitert.

Das Makro steht am Ende der Funktion, in der Regel nach dem const, falls vorhanden:

    // generate error if this doesn't actually override anything:
    virtual void MyWidget::paintEvent(QPaintEvent*) override;

Siehe auch Q_DECL_FINAL.

[deprecated in 6.4] Q_DECL_RELAXED_CONSTEXPR

Dieses Makro ist seit 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 zur Kompilierzeit gemäß den entspannten Regeln von C++14 berechnet werden kann.

Siehe auch Q_DECL_CONSTEXPR.

© 2025 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.