Obsolete Members for <QtCompilerDetection>
クラス<QtCompilerDetection> の以下のメンバは非推奨である。これらは古いソース・コードの動作を維持するために提供されています。新しいコードでは使用しないことを強くお勧めします。
マクロ
(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 |
マクロ・ドキュメント
[deprecated]
Q_CC_INTEL
このマクロは非推奨です。新しいコードで使用しないことを強くお勧めします。
このマクロは、アプリケーションが Linux、macOS、または Windows 用の古いインテル® C++ コンパイラーでコンパイルされた場合に定義されていました。新しい oneAPI C++ コンパイラーは単なる Clang のビルドであるため、このマクロは定義されていません。
Q_CC_CLANGも参照してください 。
[deprecated in 6.4]
Q_DECL_CONSTEXPR
このマクロは 6.4 以降では非推奨です。新しいコードでは使用しないことを強くお勧めします。
代わりにconstexpr
キーワードを使用してください。
このマクロはコンパイル時に構築される変数や、コンパイル時に計算されるインライン関数を宣言するために使用できます。
Q_DECL_RELAXED_CONSTEXPRも参照してください 。
[deprecated]
Q_DECL_FINAL
このマクロは非推奨です。新しいコードでは使用しないことを強く推奨する。
このマクロは、Javaのセマンティクスで、オーバーライドする仮想またはクラスを "final "として宣言するために使用できます。さらに派生したクラスは、それぞれこの仮想関数をオーバーライドしたり、このクラスを継承したりできなくなります。
これは "final "に展開される。
マクロは関数の末尾、通常はconst
の後に記述します:
// more-derived classes no longer permitted to override this: virtual void MyWidget::paintEvent(QPaintEvent*) final;
クラスの場合は、クラス定義の:
があれば、その前に記述します:
class QRect final { // cannot be derived from // ... };
Q_DECL_OVERRIDEも参照のこと 。
[deprecated in 6.4]
Q_DECL_NOEXCEPT
このマクロは6.4以降非推奨です。このマクロは 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]
Q_DECL_OVERRIDE
このマクロは非推奨です。新しいコードでは使用しないことを強くお勧めします。
このマクロは、オーバーライド仮想関数を宣言するために使用できます。このマークアップを使用すると、オーバーライドする仮想関数が実際には何もオーバーライドしていない場合に、コンパイラがエラーを生成するようになります。
override "と展開される。
マクロは関数の最後、通常はconst
の後に記述します:
// generate error if this doesn't actually override anything: virtual void MyWidget::paintEvent(QPaintEvent*) override;
Q_DECL_FINALも参照してください 。
[deprecated in 6.4]
Q_DECL_RELAXED_CONSTEXPR
このマクロは6.4以降非推奨です。このマクロは 6.4 以降非推奨です。
代わりにconstexpr
キーワードを使用してください。
このマクロは、C++14 からの緩和された規則に従ってコンパイル時に計算できるインライン関数を宣言するために使用できます。
Q_DECL_CONSTEXPRも参照してください 。
本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。