我正在寻找一个OO sqlite C ++包装器,它允许类的准透明序列化和反序列化。
我想到的工作流程如下:
通过<<简单序列化和反序列化和>>为整个班级。
这是现实还是我必须自己编写运算符?理想情况下,我不想担心数据如何进入数据库以及如何存储...易用性是我主要关心的问题,而不是灵活性或性能。
我正在寻找GAE datastore python interface。
的内容非常感谢, 阿里克
答案 0 :(得分:4)
没有简单的C ++ ORM(对象关系映射)工具。我所知道的两个简化过程的库是:
社会变得更简单,在哲学上更像是一种提升,而debea更多是以ORM为导向的。顺便说一句,如果SQLite / SQL /请求不是必需的,您可以使用Boost serialization framework。
只是我的两分钱
编辑:
好吧,鉴于几乎不存在C ++反射的可能性,我的拙见是,你想做的唯一方法就是使用代码生成器。鉴于没有像样的,易于使用的C ++解析器/词法分析器/ ...,我知道没有广泛使用的工具。
我认识的人多年来也有同样的问题。他终于找到了一个解决方案:他告诉我clang现在可用(它编译了boost),并且他使用它根据代码中的标记生成序列化代码(他告诉我有标记的支持)在TR1,但我不是专家)。这是有价值的反馈,我自己在这个领域的尝试让我同意解决方案。
答案 1 :(得分:3)
Quince是一个几乎完全是提问者所要求的库。请参阅quince-lib.com。
(完全披露:我写了。)
答案 2 :(得分:2)
这个问题刚才被问到了。从那以后,Hiberlite已经开发出来,并且声称几乎完全符合你的要求。
它不支持使用<<读取/写入和>> (正如其他人所提到的那样,Boost.serialization确实存在,但它不存储在SQL DB中);然而,使用它似乎很容易。
答案 3 :(得分:1)
尝试sqlite_orm
https://github.com/fnc12/sqlite_orm。它提供了您所需的一切-将类映射到表,将类成员映射到列