Obsolete Members for <QtCompilerDetection>
<QtCompilerDetection> クラスの以下のメンバーは非推奨となっています。これらは、古いソースコードが引き続き動作するように提供されているものです。新しいコードでの使用は強く推奨しません。
マクロ
(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 |
マクロのドキュメント
[deprecated] Q_CC_INTEL
このマクロは非推奨です。新しいコードでの使用は強くお勧めしません。
このマクロは、Linux、macOS、または Windows 向けの旧式の Intel C++ コンパイラでアプリケーションがコンパイルされた場合に定義されていました。新しい oneAPI C++ コンパイラは Clang をビルドしたものに過ぎないため、このマクロは定義されません。
Q_CC_CLANGも参照してください 。
[deprecated in 6.4] Q_DECL_CONSTEXPR
このマクロはバージョン6.4以降、非推奨となっています。新しいコードでの使用は強くお勧めしません。
代わりに、constexpr キーワードを使用してください。
このマクロは、コンパイル時に生成されるべき変数や、コンパイル時に計算可能なインライン関数を宣言するために使用できます。
Q_DECL_RELAXED_CONSTEXPR およびQ_DECL_CONSTEXPR_DTORも参照してください 。
[deprecated in 5.15] Q_DECL_FINAL
このマクロはバージョン 5.15 以降、非推奨となっています。新しいコードでの使用は強く推奨しません。
このマクロを使用すると、Java のセマンティクスに従って、オーバーライドされる仮想関数やクラスを「final」として宣言できます。これにより、さらに派生したクラスは、それぞれこの仮想関数をオーバーライドできなくなったり、このクラスを継承できなくなったりします。
これは「final」に展開されます。
このマクロは関数の末尾、通常はconst (存在する場合)の後に配置します。
// more-derived classes no longer permitted to override this:
virtual void final_func() final;クラスの場合は、クラス定義内の: (存在する場合)の前に記述します:
class SomeClass final { // cannot be derived from
// ...
};Q_DECL_OVERRIDEも参照してください 。
[deprecated in 6.4] Q_DECL_NOEXCEPT
このマクロはバージョン6.4以降、非推奨となっています。新しいコードでの使用は強くお勧めしません。
代わりにnoexcept キーワードを使用してください。
このマクロは、関数が決して例外をスローしないことを示します。万が一、関数が例外をスローした場合でも、その挙動は定義済みであり、std::terminate() が呼び出されます。
Q_DECL_NOTHROW およびQ_DECL_NOEXCEPT_EXPR()も参照してください 。
[deprecated in 6.4] Q_DECL_NOEXCEPT_EXPR(x)
このマクロはバージョン6.4以降、非推奨となっています。新しいコードでの使用は強くお勧めしません。
代わりにnoexcept キーワードを使用してください。
このマクロは、x がtrue の場合、関数を「例外を投げない」ものとしてマークします。それにもかかわらず関数が例外を投げた場合、その挙動は定義済みであり、std::terminate()が呼び出されます。
「 Q_DECL_NOTHROW 」および「Q_DECL_NOEXCEPT 」も参照してください 。
[deprecated in 6.4] Q_DECL_NOTHROW
このマクロはバージョン6.4以降、非推奨となっています。新しいコードでの使用は強くお勧めしません。
代わりにnoexcept キーワードを使用してください。
このマクロは、いかなる状況下でも例外をスローしない関数としてマークします。もし関数が例外をスローした場合、その挙動は未定義となります。
Q_DECL_NOEXCEPT およびQ_DECL_NOEXCEPT_EXPR()も参照してください 。
[deprecated in 5.15] Q_DECL_OVERRIDE
このマクロはバージョン 5.15 以降、非推奨となっています。新しいコードでの使用は強く推奨しません。
このマクロは、オーバーライドされる仮想関数を宣言するために使用できます。この表記を使用すると、オーバーライドされる仮想関数が実際には何もオーバーライドしていない場合、コンパイラがエラーを生成するようになります。
これは「override」に展開されます。
このマクロは関数の末尾、通常はconst (存在する場合)の直後に記述します。
// generate error if this doesn't actually override anything:
virtual void override_func() override;Q_DECL_FINALも参照してください 。
[deprecated in 6.4] Q_DECL_RELAXED_CONSTEXPR
このマクロはバージョン6.4以降、非推奨となっています。新しいコードでの使用は強く推奨しません。
代わりにconstexpr キーワードを使用してください。
このマクロを使用すると、C++14の緩和された規則に従ってコンパイル時に計算可能なインライン関数を宣言できます。
「 Q_DECL_CONSTEXPR 」および「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.