Obsolete Members for <QtCompilerDetection>

Les membres suivants de la classe ` <QtCompilerDetection> ` sont obsolètes. Ils sont fournis afin de garantir la compatibilité avec l'ancien code source. Nous déconseillons fortement de les utiliser dans le nouveau code.

Macros

(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

Documentation sur les macros

[deprecated] Q_CC_INTEL

Cette macro est obsolète. Nous déconseillons fortement de l'utiliser dans du nouveau code.

Cette macro était auparavant définie si l'application était compilée avec l'ancien compilateur Intel C++ pour Linux, macOS ou Windows. Le nouveau compilateur oneAPI C++ n'est qu'une version de Clang et ne définit donc pas cette macro.

Voir également Q_CC_CLANG.

[deprecated in 6.4] Q_DECL_CONSTEXPR

Cette macro est obsolète depuis la version 6.4. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.

Utilisez plutôt le mot-clé ` constexpr `.

Cette macro peut être utilisée pour déclarer une variable qui doit être construite lors de la compilation, ou une fonction inline pouvant être calculée lors de la compilation.

Voir également Q_DECL_RELAXED_CONSTEXPR et Q_DECL_CONSTEXPR_DTOR.

[deprecated in 5.15] Q_DECL_FINAL

Cette macro est obsolète depuis la version 5.15. Nous déconseillons fortement de l'utiliser dans du nouveau code.

Cette macro permet de déclarer une fonction virtuelle redéfinissable ou une classe comme « final », selon la sémantique Java. Les classes dérivées ultérieurement ne peuvent alors plus redéfinir cette fonction virtuelle, ni hériter de cette classe, respectivement.

Elle se développe en « final ».

La macro se place à la fin de la fonction, généralement après l’ const, le cas échéant :

    // more-derived classes no longer permitted to override this:
    virtual void final_func() final;

Pour les classes, elle est placée avant l’ :, le cas échéant, dans la définition de la classe :

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

Voir également « Q_DECL_OVERRIDE ».

[deprecated in 6.4] Q_DECL_NOEXCEPT

Cette macro est obsolète depuis la version 6.4. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.

Utilisez plutôt le mot-clé ` noexcept `.

Cette macro indique qu'une fonction ne lève jamais d'exception. Si la fonction en lève néanmoins une, le comportement est défini : std::terminate() est appelé.

Voir également ` Q_DECL_NOTHROW ` et ` Q_DECL_NOEXCEPT_EXPR()`.

[deprecated in 6.4] Q_DECL_NOEXCEPT_EXPR(x)

Cette macro est obsolète depuis la version 6.4. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.

Utilisez plutôt le mot-clé ` noexcept `.

Cette macro marque une fonction comme ne générant pas d’exception si x est défini true. Si la fonction génère néanmoins une exception, le comportement est défini : std::terminate() est appelé.

Voir également Q_DECL_NOTHROW et Q_DECL_NOEXCEPT.

[deprecated in 6.4] Q_DECL_NOTHROW

Cette macro est obsolète depuis la version 6.4. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.

Utilisez plutôt le mot-clé ` noexcept `.

Cette macro indique qu'une fonction ne lève jamais d'exception, en aucune circonstance. Si la fonction lève néanmoins une exception, le comportement est indéfini.

Voir également ` Q_DECL_NOEXCEPT ` et ` Q_DECL_NOEXCEPT_EXPR()`.

[deprecated in 5.15] Q_DECL_OVERRIDE

Cette macro est obsolète depuis la version 5.15. Nous déconseillons fortement de l'utiliser dans du nouveau code.

Cette macro permet de déclarer une fonction virtuelle redéfinissante. L'utilisation de cette syntaxe permettra au compilateur de générer une erreur si la fonction virtuelle redéfinissante ne redéfinit en réalité rien.

Elle se développe en « override ».

La macro se place à la fin de la fonction, généralement après l'const, le cas échéant :

    // generate error if this doesn't actually override anything:
    virtual void override_func() override;

Voir également ` Q_DECL_FINAL`.

[deprecated in 6.4] Q_DECL_RELAXED_CONSTEXPR

Cette macro est obsolète depuis la version 6.4. Nous vous déconseillons fortement de l'utiliser dans du nouveau code.

Utilisez plutôt le mot-clé « constexpr ».

Cette macro permet de déclarer une fonction inline pouvant être évaluée à la compilation, conformément aux règles assouplies de la norme C++14.

Voir également Q_DECL_CONSTEXPR et 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.