<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_32 とQ_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_V6 とQ_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_ARM 、Q_PROCESSOR_ARM_V5 、Q_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_II 、Q_PROCESSOR_MIPS_III 、Q_PROCESSOR_MIPS_IV 、Q_PROCESSOR_MIPS_V 、Q_PROCESSOR_MIPS_32 、Q_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_MIPS 、Q_PROCESSOR_MIPS_I 、Q_PROCESSOR_MIPS_II マクロも定義されます。
QSysInfo::buildCpuArchitecture()も参照してください 。
Q_PROCESSOR_MIPS_IV
アプリケーションがMIPS-IVプロセッサ用にコンパイルされている場合に定義される。Q_PROCESSOR_MIPS_IV が定義されている場合、Q_PROCESSOR_MIPS 、Q_PROCESSOR_MIPS_I 、Q_PROCESSOR_MIPS_II 、Q_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_32 とQ_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_32 とQ_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.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。