이 페이지에서

QVersionNumber Class

QVersionNumber 클래스는 임의의 개수의 세그먼트로 구성된 버전 번호를 포함합니다. 더 보기...

헤더: #include <QVersionNumber>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core)
target_link_libraries(mytarget PRIVATE Qt6::Core)
qmake: QT += core

QVersionNumber 비교

범주비교 가능한 유형
strongQVersionNumber

공개 유형

(since 6.8) const_iterator
(since 6.8) const_pointer
(since 6.8) const_reference
(since 6.8) const_reverse_iterator
(since 6.8) difference_type
(since 6.8) pointer
(since 6.8) reference
(since 6.8) size_type
(since 6.8) value_type

공개 함수

QVersionNumber()
QVersionNumber(QList<int> &&seg)
(since 6.8) QVersionNumber(QSpan<const int> args)
QVersionNumber(const QList<int> &seg)
QVersionNumber(int maj)
QVersionNumber(std::initializer_list<int> args)
QVersionNumber(int maj, int min)
QVersionNumber(int maj, int min, int mic)
(since 6.8) QVersionNumber::const_iterator begin() const
(since 6.8) QVersionNumber::const_iterator cbegin() const
(since 6.8) QVersionNumber::const_iterator cend() const
(since 6.8) QVersionNumber::const_iterator constBegin() const
(since 6.8) QVersionNumber::const_iterator constEnd() const
(since 6.8) QVersionNumber::const_reverse_iterator crbegin() const
(since 6.8) QVersionNumber::const_reverse_iterator crend() const
(since 6.8) QVersionNumber::const_iterator end() const
bool isNormalized() const
bool isNull() const
bool isPrefixOf(const QVersionNumber &other) const
int majorVersion() const
int microVersion() const
int minorVersion() const
QVersionNumber normalized() const
(since 6.8) QVersionNumber::const_reverse_iterator rbegin() const
(since 6.8) QVersionNumber::const_reverse_iterator rend() const
int segmentAt(qsizetype index) const
qsizetype segmentCount() const
QList<int> segments() const
QString toString() const

정적 공용 멤버

QVersionNumber commonPrefix(const QVersionNumber &v1, const QVersionNumber &v2)
int compare(const QVersionNumber &v1, const QVersionNumber &v2)
(since 6.4) QVersionNumber fromString(QAnyStringView string, qsizetype *suffixIndex = nullptr)
bool operator!=(const QVersionNumber &lhs, const QVersionNumber &rhs)
bool operator<(const QVersionNumber &lhs, const QVersionNumber &rhs)
QDataStream &operator<<(QDataStream &out, const QVersionNumber &version)
bool operator<=(const QVersionNumber &lhs, const QVersionNumber &rhs)
bool operator==(const QVersionNumber &lhs, const QVersionNumber &rhs)
bool operator>(const QVersionNumber &lhs, const QVersionNumber &rhs)
bool operator>=(const QVersionNumber &lhs, const QVersionNumber &rhs)
QDataStream &operator>>(QDataStream &in, QVersionNumber &version)

상세 설명

QVersionNumber version(1, 2, 3);  // 1.2.3

멤버 유형 문서

[alias, since 6.8] QVersionNumber::const_iterator

[alias, since 6.8] QVersionNumber::const_reverse_iterator

QVersionNumber 세그먼트에 대한 (역방향) 임의 접근 이터레이터를 구현하는 불투명 클래스에 대한 타입 정의입니다.

참고: QVersionNumber 는 세그먼트의 인플레이스 수정을 지원하지 않으므로, 가변 이터레이터는 존재하지 않습니다.

이 타입 정의는 Qt 6.8에서 도입되었습니다.

[alias, since 6.8] QVersionNumber::const_pointer

[alias, since 6.8] QVersionNumber::const_reference

[alias, since 6.8] QVersionNumber::difference_type

[alias, since 6.8] QVersionNumber::pointer

[alias, since 6.8] QVersionNumber::reference

[alias, since 6.8] QVersionNumber::size_type

[alias, since 6.8] QVersionNumber::value_type

STL 호환성을 위해 제공됩니다.

참고: ` QVersionNumber ` 는 세그먼트를 그 자리에서 수정하는 기능을 지원하지 않으므로, `reference`와 ` const_reference`, 그리고 `pointer`와 ` const_pointer `는 쌍을 이루는 동일한 유형입니다.

이러한 typedef는 Qt 6.8에서 도입되었습니다.

멤버 함수 문서

[noexcept] QVersionNumber::QVersionNumber()

null 버전을 생성합니다.

isNull()도 참조하십시오 .

[explicit] QVersionNumber::QVersionNumber(QList<int> &&seg)

seg 에 포함된 숫자 목록을 바탕으로 버전 번호를 생성합니다.

[explicit, since 6.8] QVersionNumber::QVersionNumber(QSpan<const int> args)

args 로 지정된 범위를 기반으로 버전 번호를 생성합니다.

참고: Qt 6.8 이전버전에서는 QVersionNumber를 QList, QVarLenthArray 또는 std::initializer_list로만 생성할 수 있었습니다.

이 함수는 Qt 6.8에서 도입되었습니다.

[explicit] QVersionNumber::QVersionNumber(const QList<int> &seg)

seg 에 포함된 숫자 목록을 바탕으로 버전 번호를 생성합니다.

[explicit] QVersionNumber::QVersionNumber(int maj)

메이저 버전 번호 maj 만으로 구성된 QVersionNumber 객체를 생성합니다.

QVersionNumber::QVersionNumber(std::initializer_list<int> args)

args 로 지정된 std::initializer_list를 사용하여 버전 번호를 생성합니다.

[explicit] QVersionNumber::QVersionNumber(int maj, int min)

메이저 버전 번호 maj 와 마이너 버전 번호 min 로 구성된 QVersionNumber 객체를 생성합니다.

[explicit] QVersionNumber::QVersionNumber(int maj, int min, int mic)

메이저, 마이너, 마이크로 버전 번호 maj, min, mic 로 구성된 QVersionNumber 객체를 생성합니다.

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::begin() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::cbegin() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::cend() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::constBegin() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::constEnd() const

[noexcept, since 6.8] QVersionNumber::const_iterator QVersionNumber::end() const

[noexcept, since 6.8] QVersionNumber::const_reverse_iterator QVersionNumber::crbegin() const

[noexcept, since 6.8] QVersionNumber::const_reverse_iterator QVersionNumber::crend() const

[noexcept, since 6.8] QVersionNumber::const_reverse_iterator QVersionNumber::rbegin() const

[noexcept, since 6.8] QVersionNumber::const_reverse_iterator QVersionNumber::rend() const

이 버전 번호의 첫 번째 세그먼트 또는 마지막 세그먼트 바로 다음 세그먼트를 가리키는 ` const_iterator ` 또는 ` const_reverse_iterator`를 각각 반환합니다.

참고: ` QVersionNumber ` 는 세그먼트를 제자리에서 수정하는 기능을 지원하지 않으므로, 변경 가능한 이터레이터는 없습니다.

이 함수들은 Qt 6.8에서 도입되었습니다.

[static] QVersionNumber QVersionNumber::commonPrefix(const QVersionNumber &v1, const QVersionNumber &v2)

QVersionNumber QVersionNumber::commonPrefix(const QVersionNumber &v1, const QVersionNumber &v2)

v1 와 v2 모두의 상위 버전인 버전 번호를 반환합니다.

isPrefixOf()도 참조하십시오 .

[static noexcept] int QVersionNumber::compare(const QVersionNumber &v1, const QVersionNumber &v2)

v1 와 v2 를 비교하여, v1 가 v2 보다 작거나, 같거나, 큰지에 따라 각각 0보다 작거나, 같거나, 큰 정수를 반환합니다.

비교는 v1 와 v2 의 세그먼트를 인덱스 0부터 시작하여 더 긴 리스트의 끝 방향으로 순차적으로 비교하는 방식으로 수행됩니다.

QVersionNumber v1(1, 2);
QVersionNumber v2(1, 2, 0);
int compare = QVersionNumber::compare(v1, v2); // compare == -1

[static, since 6.4] QVersionNumber QVersionNumber::fromString(QAnyStringView string, qsizetype *suffixIndex = nullptr)

마침표(.)로 구분된 음이 아닌 십진수들로 구성된, 특정한 형식의 문자열 ` string `로부터 ` QVersionNumber ` 객체를 생성합니다.

숫자 구간이 파싱되면, 문자열의 나머지 부분은 접미사 문자열로 간주됩니다. 해당 문자열의 시작 인덱스가 null이 아닌 경우, suffixIndex 에 저장됩니다.

QLatin1StringView string("5.4.0-alpha");
qsizetype suffixIndex;
auto version = QVersionNumber::fromString(string, &suffixIndex);
// version is 5.4.0
// suffixIndex is 5

참고: Qt 6.4 이전버전에서는 이 함수가 QString, QLatin1StringView 및 QStringView 에 대해 오버로드되어 있었으며, suffixIndex 는 int* 이었습니다.

이 함수는 Qt 6.4에서 도입되었습니다.

isNull()도 참조하십시오 .

[noexcept] bool QVersionNumber::isNormalized() const

버전 번호에 끝자리가 0인 숫자가 포함되어 있지 않으면 true 을 반환하고, 그렇지 않으면 false 을 반환합니다.

normalized()도 참조하십시오 .

[noexcept] bool QVersionNumber::isNull() const

수치 세그먼트가 하나도 없으면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.

segments()도 참조하십시오 .

[noexcept] bool QVersionNumber::isPrefixOf(const QVersionNumber &other) const

현재 버전 번호가 other 의 버전 번호에 포함되어 있으면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.

QVersionNumber v1(5, 3);
QVersionNumber v2(5, 3, 1);
bool value = v1.isPrefixOf(v2); // true

commonPrefix()도 참조하십시오 .

[noexcept] int QVersionNumber::majorVersion() const

메이저 버전 번호, 즉 첫 번째 세그먼트를 반환합니다. 이 함수는 ` segmentAt(0)`과 동일합니다. 이 ` QVersionNumber ` 객체가 null인 경우, 이 함수는 0을 반환합니다.

isNull() 및 segmentAt()도 참조하십시오 .

[noexcept] int QVersionNumber::microVersion() const

마이크로 버전 번호, 즉 세 번째 구간을 반환합니다. 이 함수는 segmentAt(2)와 동일합니다. 이 QVersionNumber 객체에 마이크로 번호가 포함되어 있지 않으면, 이 함수는 0을 반환합니다.

isNull() 및 segmentAt()도 참조하십시오 .

[noexcept] int QVersionNumber::minorVersion() const

마이너 버전 번호, 즉 두 번째 세그먼트를 반환합니다. 이 함수는 segmentAt(1)과 동일합니다. 이 QVersionNumber 객체에 마이너 번호가 포함되어 있지 않으면, 이 함수는 0을 반환합니다.

isNull() 및 segmentAt()도 참조하십시오 .

QVersionNumber QVersionNumber::normalized() const

동일한 버전 번호를 반환하되, 뒤쪽의 0은 모두 제거합니다.

두 숫자가 동일한지 확인하려면, 비교를 수행하기 전에 두 버전 번호 모두에 normalized() 함수를 적용하십시오.

QVersionNumber v1(5, 4);
QVersionNumber v2(5, 4, 0);
bool equivalent = v1.normalized() == v2.normalized();
bool equal = v1 == v2;
// equivalent is true
// equal is false

[noexcept] int QVersionNumber::segmentAt(qsizetype index) const

index 에 해당하는 세그먼트 값을 반환합니다. 인덱스가 존재하지 않으면 0을 반환합니다.

segments() 및 segmentCount()도 참조하십시오 .

[noexcept] qsizetype QVersionNumber::segmentCount() const

segments()에 저장된 정수의 개수를 반환합니다.

segments()도 참조하십시오 .

QList<int> QVersionNumber::segments() const

모든 숫자 세그먼트를 반환합니다.

majorVersion(), minorVersion() 및 microVersion()도 참조하십시오 .

QString QVersionNumber::toString() const

모든 세그먼트가 마침표(.)로 구분된 문자열을 반환합니다.

majorVersion(), minorVersion(), microVersion(), segments()도 참조하십시오 .

관련 비회원

[noexcept] bool operator!=(const QVersionNumber &lhs, const QVersionNumber &rhs)

lhs 가 rhs 와 같지 않으면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.

QVersionNumber::compare()도 참조하십시오 .

[noexcept] bool operator<(const QVersionNumber &lhs, const QVersionNumber &rhs)

lhs 가 rhs 보다 작으면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.

QVersionNumber::compare()도 참조하십시오 .

QDataStream &operator<<(QDataStream &out, const QVersionNumber &version)

버전 번호 version 을 스트림 out 에 기록합니다.

이는 QDataStream::version()과는 아무런 관련이 없음을 유의하십시오.

[noexcept] bool operator<=(const QVersionNumber &lhs, const QVersionNumber &rhs)

lhs 가 rhs 이하일 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.

QVersionNumber::compare()도 참조하십시오 .

[noexcept] bool operator==(const QVersionNumber &lhs, const QVersionNumber &rhs)

lhs 가 rhs 와 같으면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.

QVersionNumber::compare()도 참조하십시오 .

[noexcept] bool operator>(const QVersionNumber &lhs, const QVersionNumber &rhs)

lhs 가 rhs 보다 크면 true 를 반환하고, 그렇지 않으면 false 를 반환합니다.

QVersionNumber::compare()도 참조하십시오 .

[noexcept] bool operator>=(const QVersionNumber &lhs, const QVersionNumber &rhs)

lhs 가 rhs 보다 크거나 같을 경우 true 를 반환하고, 그렇지 않은 경우 false 를 반환합니다.

QVersionNumber::compare()도 참조하십시오 .

QDataStream &operator>>(QDataStream &in, QVersionNumber &version)

in 스트림에서 버전 번호를 읽어와 version 에 저장합니다.

이는 QDataStream::version()과는 아무런 관련이 없음을 유의하십시오.

© 2026 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.