【发布时间】:2011-03-13 09:57:09
【问题描述】:
我不确定确切的术语是什么,有点像使用 XML 作为数据存储的 ORM。是否有任何像样的工具可以基于 XML 模式自动生成 C++ 类(包括数据和序列化/反序列化)?还是会基于 C++ 类定义创建 XML 同步代码和架构?
TinyXML 很棒,但是花费所有时间编写代码以将 XML 数据加载/保存到类中,这太老派了。我见过类似的工具专注于 SOAP/WSDL,但它们在基础之上生成了各种其他代码。
有什么好的开源库吗?
【问题讨论】:
-
根据我的经验,基于 XML 模式自动生成 C++ 类并不是一个好主意,尤其是在模式很大和/或可能发生变化的情况下。每次架构更改时,您都必须重新生成所有类,这通常需要完全重建系统的其余部分。
-
我必须重建比我的代码错误更好。而且重建时间比编写和测试超枯燥的 XML(反)序列化代码要好。
标签: c++ xml xsd code-generation