---
title: CheckVersionMatch
description: "校验服务端和客户端版本是否匹配。"
url: https://www.hikunpeng.com/document/detail/zh/kunpengcps/boostcph/instrucstreamengine/kunpengcpsinstruction_17_0016.html
sourcePath: /source/zh/kunpengcps/boostcph/instrucstreamengine/kunpengcpsinstruction_17_0016.html
indexId: 709ca077e24b94f8e3ba801b522141f1289454a2a5175141ed46e87a0edfd19d85
---
# CheckVersionMatch

#### 函数功能

校验服务端和客户端版本是否匹配。


#### 约束说明

此接口用于校验服务端和客户端的版本号是否匹配，不要求二次开发者一定需实现，若未实现将有默认实现，默认实现是判断服务端版本号和客户端版本号是否完全相同，若完全相同，则返回true，否则返回false，若二次开发者实现了此接口，指令流引擎会调用该函数校验服务端和客户端的版本号。若版本号校验返回false，引擎将通过RegConnectionCB注册的回调函数上报版本不匹配的错误码并终止连接。


#### 函数原型

bool CheckVersionMatch(const char* serverVersion, const char* clientVersion)


#### 参数说明

| 参数名称 | 输入/输出 | 参数类型 | 参数描述 |
| --- | --- | --- | --- |
| serverVersion | 输入 | const char\* | 服务端版本号信息。 |
| clientVersion | 输入 | const char\* | 客户端版本号信息。 |


#### 返回值说明

数据类型：bool

取值如下：

- true：校验成功。
- false：校验失败。


#### 调用示例

```
// 函数原型声明，实现由客户提供 
using CheckVersionMatchFunc = bool (*)(const char*, const char*);
const char *soPath = "./libCommunication.so";
void Test() 
{
    // 动态加载通信动态库的函数符号
    void *handle = dlopen(soPath, RTLD_GLOBAL | RTLD_LAZY | RTLD_NODELETE);
    CheckVersionMatchFunc checkVersion = (CheckVersionMatchFunc)dlsym(handle, "CheckVersionMatch");
    checkVersion("Kunpeng BoostKit 22", "Kunpeng BoostKit 23");
    dlclose(handle);
}
```
