繁体   English   中英

C ++等同于Python的“构造”库

[英]C++ equivalent of Python's “construct” library

我正在寻找一个等效于Python的库“ construct”,也许有人已经移植了它。

Construct是一个强大的二进制数据声明式解析器。

它基于以声明性方式而不是过程代码定义数据结构的概念:简单的结构可以分层组合以形成越来越复杂的数据结构。 这是第一个使解析变得有趣的库,而不是如今的常见问题。

对于Java,这是类似的问题。 Java等同于Python的“构造”库

谢谢。

您可能对看一下协议缓冲区感兴趣。 该库使您可以使用可编译为C ++,Java或python的中间语言编写数据描述。

作为参考,OP正在谈论这个称为Construct的库。 该库允许您构建可以解析和重建原始二进制数据流的解析器/构造函数。 “ Construct是一个功能强大的声明性和对称解析器,并且是二进制数据的构建器。” 当搜索类似于Construct的库时,这一区别很重要。 它确实是唯一的,并且是我在C ++中真正想要的功能。

我可以找到的最接近的库称为binpac 但是,它仅创建解析器,并且是生成C ++代码的外部工具。

为什么是struct s,它是C和C ++固有的。 除非您希望能够生成只能在运行时确定的具有一组字段的结构,否则, 在这种情况下, malloc (分配struct变量所需的内存)和一些memcpy s(将数据写入struct变量)应该可以解决问题。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM