flatbuffer
2016-08-12 11:54:32 0 举报
FlatBuffers是一种高效的跨平台序列化库,它允许您在内存中直接创建、解析和访问数据。与传统的序列化库(如JSON、XML等)相比,FlatBuffers具有更快的性能和更小的二进制尺寸。它使用了一种名为“扁平二进制文件格式”的数据结构,该结构将数据表示为紧凑的二进制形式,从而减少了内存占用和传输时间。 FlatBuffers的主要优点是其简单性和高性能。它的API非常简洁,易于学习和使用。此外,由于其底层实现使用了C++,因此它具有出色的性能。这使得FlatBuffers非常适合用于游戏开发、实时系统和其他需要高性能序列化的场景。
作者其他创作
大纲/内容
FlatBuffers::Offset
1.FlatBuffers命名空间的源代码都在flatbuffers.h中,reflection命名空间的在reflection_generated.h中2.schema指一个bfs文件,包含各个objects,文件扩展名等信息3.object指bfs里的一个table或者struct,包含各个fields4.field指table或struct里的一个字段,包含字段名、默认值、类型等信息5.FlatBufferBuilder负责内存处理,每个经过编码的field都会在builder中有一个特定的offset,根据这个offset可以直接访问值6.reflection机制使用flatbuffers本身来描述自己,reflection_generated.h这个文件由flatc编译reflection.fbs产生
FlatBuffers::Struct
- fields()
reflection::BaseType
ByteIntFloatStringVectorObjUnion
FlatBuffers::Table
reflection::Field
- type()
FlatBuffers::Verifier
reflection::Type
- base_type()
reflection::Object
- fields()- bytesize()- is_struct()
FlatBuffers::FlatBufferBuilder
- fields()- CreateVector()- StartTable()、EndTable()
reflection::Schema
- objects()
0 条评论
下一页
为你推荐
查看更多
抱歉,暂无相关内容