Table of Contents:

protobuf 是一个开源项目,而且是后台很硬的开源项目。

它是一种轻便高效的结构化数据存储格式,适合做数据存储或传输协议格式

优点

缺点

编写.proto文件

在 protobuf 的术语中,结构化数据被称为 Message

编译.proto

去官网下载protoc

bat生成脚本
示例1:

@echo off


if not exist ".\out" md out


echo start... 
for %%i in (.\proto\*.proto) do (     
    echo %%i ok
    .\bin\protoc.exe -I=.\proto --cpp_out=.\out %%i    
)  
echo end...  
pause 

示例2:

 @echo off
 
 set SOURCE_FOLDER=.
 set CPP_COMPILER_PATH=protoc.exe
 set CPP_TARGET_PATH=./client/
 

 for /f "delims=" %%i in ('dir /b "%SOURCE_FOLDER%\*.proto"') do (

     echo %CPP_COMPILER_PATH% --cpp_out=%CPP_TARGET_PATH% %%i
     %CPP_COMPILER_PATH% --cpp_out=%CPP_TARGET_PATH% %%i
 
 )

pause

数字编号

在消息定义中,每个字段都有唯一的一个数字标识符。这些标识符是用来在消息的二进制格式中识别各个字段的,一旦开始使用就不能够再改变。注:[1,15]之内的标识号在编码的时候会占用一个字节。[16,2047]之内的标识号则占用2个字节。所以应该为那些频繁出现的消息元素保留 [1,15]之内的标识号。切记:要为将来有可能添加的、频繁出现的标识号预留一些标识号。

其他资源