当前位置: 首页 > >

FlatBuffer 上手体验

FlatBuffer上手体验
安装flatc
下载github源代码 https://google.github.io/flatbuffers/本地编译安装

cmake -G "Unix Makefiles" -DCMAKE_BUILD_TYPE=Release
make
sudo make install
# 验证安装compiler成功
(base) liang@liang-MacBookPro:~/liang/om/flatbuffers-master$ flatc --version
flatc version 1.11.0

编写schema

譬如C++ 数据结构如下


class Point
{
float x;
float y;
};

class Node
{
std::string name;
Point position;
};

class Layer: public Node
{
Node* friend;
std::vector children;
std::vector transform;
};

对应的schema


namespace Layer;
table Point_Fb
{
x:float;
y:float;
}

table Node_Fb
{
name:string;
position:Point_Fb;
}

table Layer_Fb
{
super:Node_Fb;
friend:Node_Fb;
children:[Node_Fb];
transform:[Point_Fb];
}

root_type Layer_Fb;

生成C++头文件
生成

#具体参数参考官方文档 https://google.github.io/flatbuffers/flatbuffers_guide_using_schema_compiler.html
flatc -c -o ./ MD_Fb.fbs

验证

(base) liang@liang-MacBookPro:~/CLionProjects/turboz/core$ ls -la MD_Fb_generated.h
-rw-r--r-- 1 liang liang 8613 1月 30 20:17 MD_Fb_generated.h



友情链接: year2525网 工作范文网 QS-ISP 138资料网 528200 工作范文网 baothai 表格模版