【发布时间】:2016-02-13 17:59:29
【问题描述】:
上下文:我正在使用 .mbtiles 文件,一种地理映射文件格式,它是一个包含矢量切片的 sqlite 数据库文件。
这些矢量切片使用协议缓冲区打包,然后压缩。
我正在使用C++,目前正在阅读zlib使用解压示例,但我不确定如何处理块和流事件的结束。
SQLite 给了我一个 void* 指针和一个长度。
我引用页面:
对于 zlib 流嵌入到其他数据中的应用程序,这 需要修改例程以返回未使用的数据,或者在 最少表明有多少输入数据没有被使用,所以 应用程序会知道在 zlib 流之后从哪里获取。
协议缓冲区类方法采用 void* 或 std::string。我想我应该选择 void*。
我不确定这些事件是如何工作的,而且该示例似乎没有为字节数组提供案例。我应该如何更改代码以避免错误?
【问题讨论】:
标签: c++ sqlite gzip zlib inflate