# VerCompare

对比两个版本字符串.

    Result := VerCompare(VersionA, VersionB)

## 参数

VersionA, VersionB

  类型: 字符串

  要比较的版本字符串.

## 返回值

类型: 整数

为了表示 VersionA 和 VersionB 之间的关系, 该函数返回以下值之一:

- 如果 VersionA 等于 VersionB, 则返回 0
- 如果 VersionA 大于 VersionB, 则返回正整数
- 如果 VersionA 小于 VersionB, 则返回负整数

要检查两个字符串之间的特定关系, 请将结果与 0 比较. 例如:

    a_less_than_b := VerCompare(a, b) < 0
    a_greater_than_or_equal_to_b := VerCompare(a, b) >= 0

## 备注

版本字符串是按照与 #Requires 相同的规则进行比较的.

这个函数应该能够正确地比较 Semantic Versioning 2.0.0 版本字符串, 但是不要求参数是有效的 SemVer 字符串.

该函数可用于排序回调.

## 相关

Sort, StrCompare

## 示例

检查正在使用的 AutoHotkey 的版本.

    if VerCompare(A_AhkVersion, "2.0") < 0
        MsgBox "This version < 2.0; possibly a pre-release version."
    else
        MsgBox "This version is 2.0 or later."

显示 VerCompare 和 StrCompare 之间的区别.

    MsgBox VerCompare("1.20.0", "1.3")  ; 返回 1
    MsgBox StrCompare("1.20.0", "1.3")  ; 返回 -1

示范与预发布版本的比较.

    MsgBox VerCompare("2.0-a137", "2.0-a136")  ; Returns 1
    MsgBox VerCompare("2.0-a137", "2.0")  ; Returns -1
    MsgBox VerCompare("10.2-beta.3", "10.2.0")  ; Returns -1

dftg