<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
アプリケーションがモトローラ 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_64 が定義されている場合、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_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_V が定義されている場合、Q_PROCESSOR_MIPS,Q_PROCESSOR_MIPS_I,Q_PROCESSOR_MIPS_II,Q_PROCESSOR_MIPS_III,Q_PROCESSOR_MIPS_IV マクロも定義される。
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_64 が定義されている場合、Q_PROCESSOR_POWER マクロも定義されます。
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_64 が定義されている場合、Q_PROCESSOR_RISCV マクロも定義されます。
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()も参照のこと 。
© 2025 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.