QOperatingSystemVersion Class
QOperatingSystemVersion クラスは、オペレーティング・システムのバージョンに関する情報を提供します。詳細...
Header: | #include <QOperatingSystemVersion> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS Core) target_link_libraries(mytarget PRIVATE Qt6::Core) |
qmake: | QT += core |
Inherits: | QOperatingSystemVersionBase |
パブリック・タイプ
enum | OSType { Android, IOS, MacOS, TvOS, WatchOS, …, Unknown } |
パブリック関数
QOperatingSystemVersion(QOperatingSystemVersion::OSType osType, int vmajor, int vminor = -1, int vmicro = -1) | |
bool | isAnyOfType(std::initializer_list<QOperatingSystemVersion::OSType> types) const |
int | majorVersion() const |
int | microVersion() const |
int | minorVersion() const |
QString | name() const |
int | segmentCount() const |
QOperatingSystemVersion::OSType | type() const |
(since 6.1) QVersionNumber | version() const |
静的パブリック・メンバー
(since 6.1) const QOperatingSystemVersion | Android10 |
(since 6.1) const QOperatingSystemVersion | Android11 |
(since 6.5) const QOperatingSystemVersionBase | Android12 |
(since 6.5) const QOperatingSystemVersionBase | Android13 |
(since 6.5) const QOperatingSystemVersionBase | Android12L |
const QOperatingSystemVersion | AndroidJellyBean |
const QOperatingSystemVersion | AndroidJellyBean_MR1 |
const QOperatingSystemVersion | AndroidJellyBean_MR2 |
const QOperatingSystemVersion | AndroidKitKat |
const QOperatingSystemVersion | AndroidLollipop |
const QOperatingSystemVersion | AndroidLollipop_MR1 |
const QOperatingSystemVersion | AndroidMarshmallow |
const QOperatingSystemVersion | AndroidNougat |
const QOperatingSystemVersion | AndroidNougat_MR1 |
const QOperatingSystemVersion | AndroidOreo |
(since 6.1) const QOperatingSystemVersion | AndroidOreo_MR1 |
(since 6.1) const QOperatingSystemVersion | AndroidPie |
(since 6.0) const QOperatingSystemVersion | MacOSBigSur |
const QOperatingSystemVersion | MacOSCatalina |
const QOperatingSystemVersion | MacOSHighSierra |
const QOperatingSystemVersion | MacOSMojave |
(since 6.3) const QOperatingSystemVersion | MacOSMonterey |
const QOperatingSystemVersion | MacOSSierra |
(since 6.4) const QOperatingSystemVersionBase | MacOSVentura |
const QOperatingSystemVersion | OSXElCapitan |
const QOperatingSystemVersion | OSXMavericks |
const QOperatingSystemVersion | OSXYosemite |
const QOperatingSystemVersion | Windows7 |
const QOperatingSystemVersion | Windows8 |
const QOperatingSystemVersion | Windows10 |
(since 6.3) const QOperatingSystemVersionBase | Windows11 |
(since 6.3) const QOperatingSystemVersionBase | Windows10_1809 |
(since 6.3) const QOperatingSystemVersionBase | Windows10_1903 |
(since 6.3) const QOperatingSystemVersionBase | Windows10_1909 |
(since 6.3) const QOperatingSystemVersionBase | Windows10_20H2 |
(since 6.3) const QOperatingSystemVersionBase | Windows10_2004 |
(since 6.3) const QOperatingSystemVersionBase | Windows10_21H1 |
(since 6.3) const QOperatingSystemVersionBase | Windows10_21H2 |
(since 6.5) const QOperatingSystemVersionBase | Windows10_22H2 |
(since 6.4) const QOperatingSystemVersionBase | Windows11_21H2 |
(since 6.4) const QOperatingSystemVersionBase | Windows11_22H2 |
const QOperatingSystemVersion | Windows8_1 |
QOperatingSystemVersion | current() |
QOperatingSystemVersion::OSType | currentType() |
詳細説明
QSysInfo の他のバージョン関数とは異なり、QOperatingSystemVersion は、(カーネルバージョン番号やマーケティングバージョンではなく)オペレーティングシステムのバージョンに基づいて動作を変更したり、API や機能を有効にするかどうかを決定するためにdevelopers が通常使用する完全なバージョン番号へのアクセスを提供します。
現在、Android、Appleプラットフォーム(iOS、macOS、tvOS、watchOS、およびvisionOS)、およびWindowsがサポートされています。
majorVersion() 、minorVersion() 、microVersion() 関数は、オペレーティング・システムのバージョン番号に基づく部分を返します:
プラットフォーム | 値 |
---|---|
アンドロイド | Android. os .Build.VERSION.RELEASEをQVersionNumber を使用して解析した結果。前者が失敗した場合は、android.os.Build.VERSION.SDK_INTにフォールバックしてメジャーバージョンとマイナーバージョンのコンポーネントを決定する。 |
アップルのプラットフォーム | majorVersionNSProcessInfo.operatingSystemVersionから、minorVersion 、patchVersionを使用します。 |
Windows | RtlGetVersionからのdwMajorVersion、dwMinorVersion、およびdwBuildNumber - アプリケーションがOSのそのバージョン用にマニフェストされていない場合、実際のバージョン番号を隠すGetVersionExの下のシムとは対照的に、この関数は、基礎となるオペレーティング・システムのバージョン番号を常に返すことに注意してください。 |
QOperatingSystemVersionはバージョン番号とOSタイプの両方を格納するため、比較を実行する際にOSタイプを考慮することができます。たとえば、macOS Sierra(v10.12)を実行している macOS システムでは、式の左側にあるオブジェクトのメジャーバージョン番号コンポーネント(10)が右側にあるオブジェクトのそれ(9)よりも大きくても、次の式はfalse
を返します:
QOperatingSystemVersion::current() >= QOperatingSystemVersion(QOperatingSystemVersion::IOS, 9)
これにより、複数のオペレーティング・システム用の式を論理OR演算子で結合しても、期待通りに動作します。例えば
auto current = QOperatingSystemVersion::current(); if (current >= QOperatingSystemVersion::OSXYosemite || current >= QOperatingSystemVersion(QOperatingSystemVersion::IOS, 8)) { // returns true on macOS >= 10.10 and iOS >= 8.0, but false on macOS < 10.10 and iOS < 8.0 }
より素朴な比較アルゴリズムでは、Mac OS 9を含むmacOSのすべてのバージョンで誤ってtrueを返す可能性があります。この動作は、比較される QOperatingSystemVersion インスタンスの OS タイプが一致しない場合は常にfalse
を返すように比較演算子をオーバーロードすることで実現されます。このため、x
とy
の同じインスタンスに対して、x
>= y とx
< y が両方ともfalse
である場合があることに注意してください。
メンバ型ドキュメント
enum QOperatingSystemVersion::OSType
この列挙型は、QOperatingSystemVersion がサポートする様々なオペレーティングシステムファミリーのシンボル名を提供する。
定数 | 値 | 説明 |
---|---|---|
QOperatingSystemVersion::Android | 6 | Google Android オペレーティング・システム。 |
QOperatingSystemVersion::IOS | 3 | Apple iOS オペレーティング・システム。 |
QOperatingSystemVersion::MacOS | 2 | Apple macOSオペレーティングシステム。 |
QOperatingSystemVersion::TvOS | 4 | Apple tvOSオペレーティングシステム。 |
QOperatingSystemVersion::WatchOS | 5 | Apple watchOSオペレーティングシステム。 |
QOperatingSystemVersion::VisionOS | 7 | Apple visionOSオペレーティングシステム。 |
QOperatingSystemVersion::Windows | 1 | Microsoft Windowsオペレーティングシステム。 |
QOperatingSystemVersion::Unknown | 0 | 不明またはサポートされていないオペレーティング・システム。 |
メンバー関数ドキュメント
[constexpr]
QOperatingSystemVersion::QOperatingSystemVersion(QOperatingSystemVersion::OSType osType, int vmajor, int vminor = -1, int vmicro = -1)
OS タイプosType 、およびメジャー、マイナー、マイクロバージョン番号vmajor 、vminor 、vmicro からなる QOperatingSystemVersion をそれぞれ構築します。
[static]
QOperatingSystemVersion QOperatingSystemVersion::current()
現在の OS とそのバージョン番号を示すQOperatingSystemVersion を返します。
currentType()も参照のこと 。
[static constexpr]
QOperatingSystemVersion::OSType QOperatingSystemVersion::currentType()
QOperatingSystemVersion インスタンスを構築せずに、現在の OS の種類を返す。
current()も参照 。
bool QOperatingSystemVersion::isAnyOfType(std::initializer_list<QOperatingSystemVersion::OSType> types) const
QOperatingSystemVersion で特定される OS タイプがtypes の OS タイプのいずれかと一致するかどうかを返す。
[constexpr]
int QOperatingSystemVersion::majorVersion() const
メジャー・バージョン番号、つまりオペレーティング・システムのバージョン番号の最初のセグメントを返します。
指定したオペレーティング・システムのメジャー・バージョン番号については、メイン・クラスのドキュメントを参照してください。
-1 は、バージョン番号の構成要素が不明であるか、存在しないことを示します。
version()、minorVersion() およびmicroVersion()も参照 。
[constexpr]
int QOperatingSystemVersion::microVersion() const
マイクロバージョン番号、つまりオペレーティングシステムのバージョン番号の 3 番目のセグメントを返します。
指定したオペレーティング・システムでのマイクロ・バージョン番号については、 メイン・クラスのドキュメントを参照してください。
-1 は、バージョン番号の構成要素が不明であるか、存在しないことを示します。
version()、majorVersion() およびminorVersion()も参照 。
[constexpr]
int QOperatingSystemVersion::minorVersion() const
マイナーバージョン番号、つまりオペレーティングシステムのバージョン番号の 2 番目のセグメントを返します。
指定したオペレーティング・システムでのマイナー・バージョン番号については、 メイン・クラスのドキュメントを参照してください。
-1 は、バージョン番号の構成要素が不明、あるいは存在しないことを表します。
version()、majorVersion() およびmicroVersion()も参照 。
QString QOperatingSystemVersion::name() const
QOperatingSystemVersion で指定した OS の種類を文字列表現で返す。
type()も参照 。
[constexpr]
int QOperatingSystemVersion::segmentCount() const
バージョン番号に格納されている整数の数を返します。
[constexpr]
QOperatingSystemVersion::OSType QOperatingSystemVersion::type() const
QOperatingSystemVersion で指定した OS の種類を返す。
name()も参照 。
[since 6.1]
QVersionNumber QOperatingSystemVersion::version() const
オペレーティング・システムのバージョン番号を返します。
指定したオペレーティングシステムのバージョン番号については、メインクラスのドキュメントを参照してください。
この関数は Qt 6.1 で導入されました。
majorVersion(),minorVersion(),microVersion()も参照して ください。
メンバ変数 ドキュメント
[since 6.1]
const QOperatingSystemVersion QOperatingSystemVersion::Android10
この変数は、Android 10(バージョン10.0、APIレベル29)に対応するバージョンを保持します。
このドキュメントは Qt 6.1 で導入されました。
[since 6.1]
const QOperatingSystemVersion QOperatingSystemVersion::Android11
この変数は、Android 11(バージョン11.0、APIレベル30)に対応するバージョンを保持します。
このドキュメントは Qt 6.1 で導入されました。
[since 6.5]
const QOperatingSystemVersionBase QOperatingSystemVersion::Android12
この変数は、Android 12(バージョン12.0、APIレベル31)に対応するバージョンを保持します。
このドキュメントは Qt 6.5 で導入されました。
[since 6.5]
const QOperatingSystemVersionBase QOperatingSystemVersion::Android13
この変数は Android 13 (バージョン 13.0、API レベル 33) に対応するバージョンを保持します。
このドキュメントは Qt 6.5 で導入されました。
[since 6.5]
const QOperatingSystemVersionBase QOperatingSystemVersion::Android12L
この変数は Android 12L (バージョン 12.0、API レベル 32) に対応するバージョンを保持します。
このドキュメントは Qt 6.5 で導入されました。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidJellyBean
この変数は、Android Jelly Bean(バージョン4.1、APIレベル16)に対応するバージョンを保持します。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidJellyBean_MR1
Android Jelly Bean, maintenance release 1 (version 4.2, API level 17)に対応するバージョンを保持します。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidJellyBean_MR2
この変数は、Android Jelly Beanのメンテナンスリリース2(バージョン4.3、APIレベル18)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidKitKat
この変数は、Android KitKat(バージョン4.4および4.4W、APIレベル19および20)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidLollipop
この変数は、Android Lollipop(バージョン5.0、APIレベル21)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidLollipop_MR1
この変数は、Android Lollipop, maintenance release 1(バージョン5.1、APIレベル22)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidMarshmallow
この変数は、Android Marshmallow(バージョン6.0、APIレベル23)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidNougat
Android Nougat(バージョン7.0、APIレベル24)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidNougat_MR1
Android Nougat, maintenance release 1(バージョン7.0、APIレベル25)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::AndroidOreo
Android Oreo(バージョン8.0、APIレベル26)に対応するバージョンを保持する。
[since 6.1]
const QOperatingSystemVersion QOperatingSystemVersion::AndroidOreo_MR1
Android Oreo_MR1(バージョン 8.1、API レベル 27)に対応するバージョンを保持します。
このドキュメントは Qt 6.1 で導入されました。
[since 6.1]
const QOperatingSystemVersion QOperatingSystemVersion::AndroidPie
この変数は Android Pie (バージョン 9.0、API レベル 28) に対応するバージョンを保持します。
このドキュメントは Qt 6.1 で導入されました。
[since 6.0]
const QOperatingSystemVersion QOperatingSystemVersion::MacOSBigSur
この変数は macOS Big Sur (version 11) に対応するバージョンを保持します。
このドキュメントは Qt 6.0 で導入されました。
const QOperatingSystemVersion QOperatingSystemVersion::MacOSCatalina
この変数は、macOS Catalina (version 10.15)に対応するバージョンを保持します。
const QOperatingSystemVersion QOperatingSystemVersion::MacOSHighSierra
この変数は macOS High Sierra (version 10.13) に対応するバージョンを保持します。
const QOperatingSystemVersion QOperatingSystemVersion::MacOSMojave
この変数は、macOS Mojave(バージョン10.14)に対応するバージョンを保持する。
[since 6.3]
const QOperatingSystemVersion QOperatingSystemVersion::MacOSMonterey
この変数は macOS Monterey (バージョン 12) に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
const QOperatingSystemVersion QOperatingSystemVersion::MacOSSierra
この変数は macOS Sierra (version 10.12) に対応するバージョンを保持します。
[since 6.4]
const QOperatingSystemVersionBase QOperatingSystemVersion::MacOSVentura
この変数は macOS Ventura (version 13) に対応するバージョンを保持します。
このドキュメントは Qt 6.4 で導入されました。
const QOperatingSystemVersion QOperatingSystemVersion::OSXElCapitan
この変数は、OS X El Capitan (version 10.11)に対応するバージョンを保持します。
const QOperatingSystemVersion QOperatingSystemVersion::OSXMavericks
OS X Mavericks (version 10.9)に対応するバージョンを保持します。
const QOperatingSystemVersion QOperatingSystemVersion::OSXYosemite
OS X Yosemite(バージョン10.10)に対応するバージョンを保持します。
const QOperatingSystemVersion QOperatingSystemVersion::Windows7
Windows 7(バージョン6.1)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::Windows8
Windows 8(バージョン6.2)に対応するバージョンを保持する。
const QOperatingSystemVersion QOperatingSystemVersion::Windows10
一般的なWindows10(バージョン10.0)に対応するバージョンを保持する。
[since 6.3]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows11
この変数は、Windows 11 の初期リリース(バージョン 10.0.22000)に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
[since 6.3]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows10_1809
この変数は、Windows 10 October 2018 Update Version 1809 (version 10.0.17763)に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
[since 6.3]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows10_1903
この変数は、Windows 10 May 2019 Update Version 1903 (version 10.0.18362)に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
[since 6.3]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows10_1909
この変数は、Windows 10 November 2019 Update Version 1909 (version 10.0.18363)に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
[since 6.3]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows10_20H2
この変数は、Windows 10 October 2020 Update Version 20H2 (version 10.0.19042)に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
[since 6.3]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows10_2004
この変数は、Windows 10 May 2020 Update Version 2004 (version 10.0.19041)に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
[since 6.3]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows10_21H1
この変数は Windows 10 May 2021 Update Version 21H1 (version 10.0.19043) に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
[since 6.3]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows10_21H2
この変数は、Windows 10 November 2021 Update Version 21H2 (version 10.0.19044)に対応するバージョンを保持します。
このドキュメントは Qt 6.3 で導入されました。
[since 6.5]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows10_22H2
この変数は Windows 10 October 2022 Update Version 22H2 (version 10.0.19045) に対応するバージョンを保持します。
このドキュメントは Qt 6.5 で導入されました。
[since 6.4]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows11_21H2
この変数は、Windows 11 バージョン 21H2 (バージョン 10.0.22000)に対応するバージョンを保持します。
このドキュメントは Qt 6.4 で導入されました。
[since 6.4]
const QOperatingSystemVersionBase QOperatingSystemVersion::Windows11_22H2
この変数は、Windows 11 バージョン 22H2 (バージョン 10.0.22621)に対応するバージョンを保持します。
このドキュメントは Qt 6.4 で導入されました。
const QOperatingSystemVersion QOperatingSystemVersion::Windows8_1
この変数は、Windows 8.1 (バージョン 6.3)に対応するバージョンを保持します。
©2024 The Qt Company Ltd. 本書に含まれるドキュメントの著作権は、それぞれの所有者に帰属します。 本書で提供されるドキュメントは、Free Software Foundation が発行したGNU Free Documentation License version 1.3に基づいてライセンスされています。 Qtおよびそれぞれのロゴは、フィンランドおよびその他の国におけるThe Qt Company Ltd.の 商標です。その他すべての商標は、それぞれの所有者に帰属します。