<QtProcessorDetection> - Architecture-specific Macro Definitions

<QtProcessorDetection> ヘッダーファイルには、様々なアーキテクチャ固有のマクロが含まれています。詳細...

Header: #include <QtProcessorDetection>

マクロ

詳しい説明

<QtProcessorDetection> ヘッダーファイルは、アプリケーションが指定されたプロセッサアーキテクチャ用にコンパイルされた場合に定義されるマクロ (Q_PROCESSOR_*) を宣言しています。例えば、Q_PROCESSOR_X86 マクロは、アプリケーションが x86 プロセッサ用にコンパイルされている場合に定義されます。

これらのマクロの目的は、プログラマーがアプリケーションにアーキテク チャー固有のコードを追加できるようにすることです。

マクロの説明

QT_POINTER_SIZE

ポインタのサイズをバイト単位(4または8)で指定します。これはsizeof(void *) と同等ですが、プリプロセッサ指令で使用できます。

Q_BIG_ENDIAN

このマクロは、Q_BYTE_ORDER マクロと比較して、システムのエンディアンを決定できる値を表します。ビッグエンディアン・システムでは、最上位バイトが最下位アドレスに格納される。他のバイトは重要度の低い順に続く。

#if Q_BYTE_ORDER == Q_BIG_ENDIAN
...
#endif

Q_BYTE_ORDER およびQ_LITTLE_ENDIANも参照のこと

Q_BYTE_ORDER

このマクロは、システムがメモリにデータを格納する際に使用するバイト順、つまりシステムがリトルエンディアンかビッグエンディアンかを決定するために使用できます。Q_LITTLE_ENDIAN Q_BIG_ENDIAN通常はエンディアンを気にする必要はありませんが、例えば、整数や UTF-16 文字のどのバイトが最下位アドレスに格納されているかを知る必要がある場合は、エンディアンを気にすることがあります。エンディアン性は、Q_BYTE_ORDERの値が異なるコンピュータがデータをやり取りするネットワークにおいて重要です。

このマクロは以下の例のように使用する。

#if Q_BYTE_ORDER == Q_BIG_ENDIAN
...
#endif

or

#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
...
#endif

Q_BIG_ENDIAN およびQ_LITTLE_ENDIANも参照のこと

Q_LITTLE_ENDIAN

このマクロは、Q_BYTE_ORDER マクロと比較することで、システムのエンディアン性を判断できる値を表します。リトルエンディアン・システムでは、最下位バイトが最下位アドレスに格納される。他のバイトは重要度の高い順に続く。

#if Q_BYTE_ORDER == Q_LITTLE_ENDIAN
...
#endif

Q_BYTE_ORDER およびQ_BIG_ENDIANも参照してください

Q_PROCESSOR_X86

アプリケーションが x86 プロセッサ用にコンパイルされている場合に定義されます。Qt は現在、Q_PROCESSOR_X86_32Q_PROCESSOR_X86_64 の 2 種類の x86 をサポートしています。

QSysInfo::buildCpuArchitecture()も参照して ください。

Q_PROCESSOR_S390

アプリケーションが S/390 プロセッサ用にコンパイルされている場合に定義されます。Qt はオプションで S/390 の変種を1つサポートしています:Q_PROCESSOR_S390_X

QSysInfo::buildCpuArchitecture()も参照して ください。

Q_PROCESSOR_ALPHA

アプリケーションが Alpha プロセッサ用にコンパイルされている場合に定義されます。

QSysInfo::buildCpuArchitecture()も参照して ください。

Q_PROCESSOR_ARM

アプリケーションが ARM プロセッサ用にコンパイルされている場合に定義されます。Qt は現在、3つの ARM リビジョンをサポートしています:Q_PROCESSOR_ARM_V5 Q_PROCESSOR_ARM_V6Q_PROCESSOR_ARM_V7 です。

QSysInfo::buildCpuArchitecture() も参照して ください。

Q_PROCESSOR_ARM_V5

アプリケーションが ARMv5 プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_ARM_V5 が定義されている場合、Q_PROCESSOR_ARM マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_ARM_V6

アプリケーションが ARMv6 プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_ARM_V6 が定義されている場合、Q_PROCESSOR_ARM およびQ_PROCESSOR_ARM_V5 マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_ARM_V7

アプリケーションが ARMv7 プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_ARM_V7 が定義されている場合、Q_PROCESSOR_ARMQ_PROCESSOR_ARM_V5Q_PROCESSOR_ARM_V6 マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_AVR32

アプリケーションがAVR32プロセッサ用にコンパイルされている場合に定義されます。

QSysInfo::buildCpuArchitecture()も参照して ください。

Q_PROCESSOR_BLACKFIN

アプリケーションが Blackfin プロセッサ用にコンパイルされている場合に定義されます。

QSysInfo::buildCpuArchitecture() も参照

Q_PROCESSOR_HPPA

アプリケーションが PA-RISC プロセッサ用にコンパイルされている場合に定義されます。

QSysInfo::buildCpuArchitecture() も参照

Q_PROCESSOR_IA64

アプリケーションが IA-64 プロセッサ用にコンパイルされている場合に定義されます。これには、すべての Itanium および Itanium 2 プロセッサが含まれます。

QSysInfo::buildCpuArchitecture() も参照

[since 6.5] Q_PROCESSOR_LOONGARCH

アプリケーションが LoongArch プロセッサ用にコンパイルされている場合に定義されます。

このマクロは Qt 6.5 で導入されました。

QSysInfo::buildCpuArchitecture() も参照して ください。

[since 6.5] Q_PROCESSOR_LOONGARCH_32

アプリケーションが32ビットLoongArchプロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_LOONGARCH_32 が定義されている場合、Q_PROCESSOR_LOONGARCH マクロも定義されます。

このマクロはQt 6.5で導入されました。

QSysInfo::buildCpuArchitecture()も参照してください

[since 6.5] Q_PROCESSOR_LOONGARCH_64

アプリケーションが64ビットLoongArchプロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_LOONGARCH_64 が定義されている場合、Q_PROCESSOR_LOONGARCH マクロも定義されます。

このマクロはQt 6.5で導入されました。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_M68K

アプリケーションが Motorola 68000 プロセッサ用にコンパイルされている場合に定義されます。

QSysInfo::buildCpuArchitecture() も参照して ください。

Q_PROCESSOR_MIPS

アプリケーションが MIPS プロセッサ用にコンパイルされている場合に定義されます。Qt は現在、7つの MIPS リビジョンをサポートしています:Q_PROCESSOR_MIPS_I Q_PROCESSOR_MIPS_IIQ_PROCESSOR_MIPS_IIIQ_PROCESSOR_MIPS_IVQ_PROCESSOR_MIPS_VQ_PROCESSOR_MIPS_32Q_PROCESSOR_MIPS_64

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_MIPS_32

アプリケーションが MIPS32 プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_MIPS_32 が定義されている場合は、Q_PROCESSOR_MIPS,Q_PROCESSOR_MIPS_I, およびQ_PROCESSOR_MIPS_II マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_MIPS_64

アプリケーションがMIPS64プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_MIPS,Q_PROCESSOR_MIPS_I,Q_PROCESSOR_MIPS_II,Q_PROCESSOR_MIPS_III,Q_PROCESSOR_MIPS_IV, およびQ_PROCESSOR_MIPS_V マクロは、Q_PROCESSOR_MIPS_64 が定義されているときにも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_MIPS_I

アプリケーションがMIPS-Iプロセッサ用にコンパイルされている場合に定義される。Q_PROCESSOR_MIPS_I が定義されている場合、Q_PROCESSOR_MIPS マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_MIPS_II

アプリケーションがMIPS-IIプロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_MIPS_II が定義されている場合、Q_PROCESSOR_MIPS およびQ_PROCESSOR_MIPS_I マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_MIPS_III

アプリケーションがMIPS-IIIプロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_MIPS_III が定義されている場合、Q_PROCESSOR_MIPSQ_PROCESSOR_MIPS_IQ_PROCESSOR_MIPS_II マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_MIPS_IV

アプリケーションがMIPS-IVプロセッサ用にコンパイルされている場合に定義される。Q_PROCESSOR_MIPS_IV が定義されている場合、Q_PROCESSOR_MIPSQ_PROCESSOR_MIPS_IQ_PROCESSOR_MIPS_IIQ_PROCESSOR_MIPS_III マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照

Q_PROCESSOR_MIPS_V

アプリケーションがMIPS-Vプロセッサ用にコンパイルされている場合に定義される。Q_PROCESSOR_MIPS,Q_PROCESSOR_MIPS_I,Q_PROCESSOR_MIPS_II,Q_PROCESSOR_MIPS_III, およびQ_PROCESSOR_MIPS_IV マクロは、Q_PROCESSOR_MIPS_V が定義されているときにも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_POWER

アプリケーションが POWER プロセッサ用にコンパイルされている場合に定義されます。Qt は現在、Q_PROCESSOR_POWER_32Q_PROCESSOR_POWER_64 の 2 つの POWER バリアントをサポートしています。

QSysInfo::buildCpuArchitecture() も参照して ください。

Q_PROCESSOR_POWER_32

アプリケーションが 32 ビット Power プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_POWER_32 が定義されている場合、Q_PROCESSOR_POWER マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_POWER_64

アプリケーションが 64 ビット Power プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_POWER マクロは、Q_PROCESSOR_POWER_64 が定義されているときにも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_RISCV

アプリケーションが RISC-V プロセッサ用にコンパイルされている場合に定義されます。Qt は現在、Q_PROCESSOR_RISCV_32Q_PROCESSOR_RISCV_64 の 2 種類の RISC-V をサポートしています。

QSysInfo::buildCpuArchitecture()も参照のこと

Q_PROCESSOR_RISCV_32

アプリケーションが 32 ビット RISC-V プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_RISCV_32 が定義されている場合、Q_PROCESSOR_RISCV マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_RISCV_64

アプリケーションが 64 ビット RISC-V プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_RISCV マクロは、Q_PROCESSOR_RISCV_64 が定義されているときにも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_S390_X

アプリケーションが S/390x プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_S390 マクロは Q_PROCESSOR_S390_X が定義されているときにも定義されます。

QSysInfo::buildCpuArchitecture()も参照してください

Q_PROCESSOR_SH

アプリケーションが SuperH プロセッサ用にコンパイルされている場合に定義されます。Qt は現在、1 つの SuperH リビジョンをサポートしています:Q_PROCESSOR_SH_4A

QSysInfo::buildCpuArchitecture() も参照して ください。

Q_PROCESSOR_SH_4A

アプリケーションが SuperH 4A プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_SH_4A が定義されている場合、Q_PROCESSOR_SH マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照

Q_PROCESSOR_SPARC

アプリケーションが SPARC プロセッサ用にコンパイルされている場合に定義されます。Qt は現在、1つのオプションの SPARC リビジョンをサポートしています:Q_PROCESSOR_SPARC_V9

QSysInfo::buildCpuArchitecture() も参照して ください。

Q_PROCESSOR_SPARC_V9

アプリケーションが SPARC V9 プロセッサ用にコンパイルされている場合に定義されます。Q_PROCESSOR_SPARC_V9 が定義されている場合、Q_PROCESSOR_SPARC マクロも定義されます。

QSysInfo::buildCpuArchitecture()も参照

Q_PROCESSOR_X86_32

アプリケーションが 32 ビット x86 プロセッサ用にコンパイルされている場合に定義されます。これには、すべての i386、i486、i586、および i686 プロセッサが含まれます。Q_PROCESSOR_X86_32 が定義されている場合、Q_PROCESSOR_X86 マクロも定義される。

QSysInfo::buildCpuArchitecture()も参照

Q_PROCESSOR_X86_64

アプリケーションが 64 ビット x86 プロセッサ用にコンパイルされている場合に定義されます。これには、すべての AMD64、Intel 64、およびその他の x86_64/x64 プロセッサが含まれます。Q_PROCESSOR_X86_64 が定義されている場合、Q_PROCESSOR_X86 マクロも定義される。

QSysInfo::buildCpuArchitecture()も参照してください

©2024 The Qt Company Ltd. 本書に含まれる文書の著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。