Yayin Story Studio logo Yayin Story Studio 项目文档
回到主页 用户手册

Visindigo::General::Version Class

class Visindigo::General::Version

在现有主流版本号表示方法中找到的一个相对通用的方案. 详情...

头文件: #include <General/Version.h>
自以下版本: Visindigo 0.13.0

公开成员函数

(自 Visindigo 0.13.0 引入) Version()
(自 Visindigo 0.13.0 引入) Version(const QString &version)
(自 Visindigo 0.13.0 引入) Version(quint32 major, quint32 minor, quint32 patch, bool useBuild = false, quint32 build = 0, const QString &nickName = "")
(自 Visindigo 0.13.0 引入) Version(const Visindigo::General::Version &other)
(自 Visindigo 0.13.0 引入) Version(Visindigo::General::Version &&other)
~Version()
(自 Visindigo 0.13.0 引入) quint32 getBuild() const
(自 Visindigo 0.13.0 引入) quint32 getMajor() const
(自 Visindigo 0.13.0 引入) quint32 getMinor() const
(自 Visindigo 0.13.0 引入) QString getNickName() const
(自 Visindigo 0.13.0 引入) quint32 getPatch() const
(自 Visindigo 0.13.0 引入) bool getUseBuild() const
(自 Visindigo 0.13.0 引入) void setNickName(const QString &name)
(自 Visindigo 0.13.0 引入) void setVersion(const QString &version)
(自 Visindigo 0.13.0 引入) void setVersion(quint32 major, quint32 minor, quint32 patch, bool useBuild, quint32 build = 0, const QString &nickName = "")
(自 Visindigo 0.13.0 引入) QString toString() const
(自 Visindigo 0.13.0 引入) bool operator!=(const Visindigo::General::Version &other) const
(自 Visindigo 0.13.0 引入) bool operator<(const Visindigo::General::Version &other) const
(自 Visindigo 0.13.0 引入) bool operator<=(const Visindigo::General::Version &other) const
(自 Visindigo 0.13.0 引入) Visindigo::General::Version &operator=(Visindigo::General::Version &&other)
(自 Visindigo 0.13.0 引入) Visindigo::General::Version &operator=(const Visindigo::General::Version &other)
(自 Visindigo 0.13.0 引入) bool operator==(const Visindigo::General::Version &other) const
(自 Visindigo 0.13.0 引入) bool operator>(const Visindigo::General::Version &other) const
(自 Visindigo 0.13.0 引入) bool operator>=(const Visindigo::General::Version &other) const

静态公开成员

(自 Visindigo 0.13.0 引入) Visindigo::General::Version getABIVersion()
(自 Visindigo 0.13.0 引入) Visindigo::General::Version getAPIVersion()
(自 Visindigo 0.13.0 引入) bool isCompatibleABIVersion(const Visindigo::General::Version &env, const Visindigo::General::Version &tar)
(自 Visindigo 0.13.0 引入) bool isCompatibleAPIVersion(const Visindigo::General::Version &env, const Visindigo::General::Version &tar)

详细说明

版本号类,表示软件的版本信息。版本号由主版本号、次版本号、修订号、可选的构建号和可选的昵称组成。

这个类支持复制和移动,并且提供了比较运算符来比较不同版本号的大小关系。

成员函数文档

[since Visindigo 0.13.0] Version::Version()

默认构造函数,创建一个版本号为0.0.0的对象。默认不使用构建号,昵称为空。

这个function 从 Visindigo 0.13.0 开始支持。

另请参阅 setVersion().

[since Visindigo 0.13.0] Version::Version(const QString &version)

version 版本号字符串,格式为 "major.minor.patch[.build] [nickName]"。

如果字符串格式不正确,则版本号保持为默认值0.0.0。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] Version::Version(quint32 major, quint32 minor, quint32 patch, bool useBuild = false, quint32 build = 0, const QString &nickName = "")

major 主版本号 minor 次版本号 patch 修订号 useBuild 是否使用构建号 build 构建号 nickName 昵称

构建号默认不使用且值为0,昵称默认为空字符串。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] Version::Version(const Visindigo::General::Version &other)

other 另一个版本号对象。

复制构造函数,创建一个与 other 相同的版本号对象。

这个function 从 Visindigo 0.13.0 开始支持。

[noexcept, since Visindigo 0.13.0] Version::Version(Visindigo::General::Version &&other)

other 另一个版本号对象。

移动构造函数,转移 other 的资源到新对象中, other 变为空对象。

这个function 从 Visindigo 0.13.0 开始支持。

[noexcept] Version::~Version()

析构函数,释放资源。

[static, since Visindigo 0.13.0] Visindigo::General::Version Version::getABIVersion()

return Visindigo在编译时的ABI版本号。这个版本号存储在动态链接库里, 表达Visindigo本身的版本号。需要查询插件(包)的版本号,请参见 Visindigo::General::Plugin自己的相关函数。

这个function 从 Visindigo 0.13.0 开始支持。

[static, since Visindigo 0.13.0] Visindigo::General::Version Version::getAPIVersion()

return Visindigo在编译时的API版本号。这个版本号存储在动态链接库里, 表达Visindigo本身的版本号。需要查询插件(包)的版本号,请参见 Visindigo::General::Plugin自己的相关函数。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] quint32 Version::getBuild() const

return 构建号。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] quint32 Version::getMajor() const

return 主版本号。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] quint32 Version::getMinor() const

return 次版本号。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] QString Version::getNickName() const

return 昵称。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] quint32 Version::getPatch() const

return 修订号。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] bool Version::getUseBuild() const

return 是否使用构建号。

这个function 从 Visindigo 0.13.0 开始支持。

[static, since Visindigo 0.13.0] bool Version::isCompatibleABIVersion(const Visindigo::General::Version &env, const Visindigo::General::Version &tar)

env 运行环境的版本号 tar 目标版本号 检查运行环境的ABI版本号 env 是否兼容目标版本号 tar 。 兼容的条件是:主版本号相同,次版本号不小于目标版本号的次版本号。

return 如果环境版本号兼容目标版本号,则返回 true;否则返回 false。

这个function 从 Visindigo 0.13.0 开始支持。

[static, since Visindigo 0.13.0] bool Version::isCompatibleAPIVersion(const Visindigo::General::Version &env, const Visindigo::General::Version &tar)

env 运行环境的版本号 tar 目标版本号 检查运行环境的API版本号 env 是否兼容目标版本号 tar 。 只要环境版本号不小于目标版本号,就被认为兼容。因此必要时应该通过ABI作为兼容性检查的补充。

return 如果环境版本号兼容目标版本号,则返回 true;否则返回 false。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] void Version::setNickName(const QString &name)

name 昵称

设置版本号的昵称。昵称可以是任何字符串,通常用于表示版本的特殊含义或状态,例如 "beta"、"alpha"、"release candidate" 等等。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] void Version::setVersion(const QString &version)

version 版本号字符串,格式为 "major.minor.patch[.build] [nickName]"。

如果字符串格式不正确,则版本号保持不变。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] void Version::setVersion(quint32 major, quint32 minor, quint32 patch, bool useBuild, quint32 build = 0, const QString &nickName = "")

major 主版本号 minor 次版本号 patch 修订号 useBuild 是否使用构建号 build 构建号 nickName 昵称

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] QString Version::toString() const

return 将版本号转换为字符串表示

格式为 "major.minor.patch[.build] [nickName]"。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] bool Version::operator!=(const Visindigo::General::Version &other) const

other 另一个版本号对象。

不等于运算符,是等于运算符的取反。 return 如果当前对象的版本号不等于 other 的版本号,则返回 true;否则返回 false。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] bool Version::operator<(const Visindigo::General::Version &other) const

other 另一个版本号对象。

小于运算符,比较当前对象与 other 的版本号大小。它依次比较主版本号、次版本号、修订号和构建号(如果使用)。 return 如果当前对象的版本号小于 other 的版本号,则返回 true;否则返回 false。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] bool Version::operator<=(const Visindigo::General::Version &other) const

other 另一个版本号对象。

小于等于运算符,是小于运算符和等于运算符的取或。 return 如果当前对象的版本号小于或等于 other 的版本号,则返回 true;否则返回 false。

这个function 从 Visindigo 0.13.0 开始支持。

[noexcept, since Visindigo 0.13.0] Visindigo::General::Version &Version::operator=(Visindigo::General::Version &&other)

other 另一个版本号对象。

移动赋值运算符,将 other 的资源转移到当前对象中,other 变为空对象。 return 当前对象的引用。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] Visindigo::General::Version &Version::operator=(const Visindigo::General::Version &other)

other 另一个版本号对象。

复制赋值运算符,将 other 的值赋给当前对象。 return 当前对象的引用。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] bool Version::operator==(const Visindigo::General::Version &other) const

other 另一个版本号对象。

等于运算符,比较当前对象与 other 的版本号是否相等。它比较主版本号、次版本号、修订号和构建号(如果使用)。 return 如果当前对象的版本号等于 other 的版本号,则返回 true;否则返回 false。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] bool Version::operator>(const Visindigo::General::Version &other) const

other 另一个版本号对象。

大于运算符,比较当前对象与 other 的版本号大小。它依次比较主版本号、次版本号、修订号和构建号(如果使用)。 return 如果当前对象的版本号大于 other 的版本号,则返回 true;否则返回 false。

这个function 从 Visindigo 0.13.0 开始支持。

[since Visindigo 0.13.0] bool Version::operator>=(const Visindigo::General::Version &other) const

other 另一个版本号对象。

大于等于运算符,是大于运算符和等于运算符的取或。 return 如果当前对象的版本号大于或等于 other 的版本号,则返回 true;否则返回 false。

这个function 从 Visindigo 0.13.0 开始支持。

宏文档

Compiled_VIABI_Version

定义编译时的Visindigo ABI版本号。

这和 Version::getABIVersion() 在使用上略有区别。

因为它是被定义在头文件里的,因此在编译期就被确定,可以静态的留存在程序中, 被用来保存编译时的ABI版本号信息。Visindigo::General::Plugin就使用此宏 来固定编译ABI版本号。

Version::getABIVersion() 则可在运行时调用, 更多的是用来在运行时查询所使用的Visindigo库的ABI版本号信息。

当编译版本与使用的库版本一致时,这两个版本号是相同的。

Visindigo_ABI_VERSION_MAJOR

定义Visindigo的ABI主版本号。

Visindigo_ABI_VERSION_MINOR

定义Visindigo的ABI次版本号。

Visindigo_VERSION_MAJOR

定义Visindigo的主版本号。

Visindigo_VERSION_MINOR

定义Visindigo的次版本号。

Visindigo_VERSION_PATCH

定义Visindigo的修订号。