C++ と Qt を使用する必要があるプロジェクトがあります。また、ファイルシステムにオブジェクトを永続化する必要もあります。libodb-2.4 が完璧なソリューションであることがわかりました。ただし、コンテナ内のコンテナの値を直接サポートすることはできません。ただし、プロジェクト内のデータ構造体は、コンテナ内のコンテナとともに格納する必要があります。
現在の回避策は、コンテナー内のコンテナーの値の型をデータベースに永続化されるオブジェクト型に変更することです。その後、コンテナーをコンテナーに格納できます。しかし、その後、コンテナ内のコンテナ値のためだけに、より多くのオブジェクトの関係を管理する必要があり、プロジェクトはより複雑になります。
この問題を解決できる他のソリューションやライブラリはありますか? または、保存するオブジェクトをシリアル化するのがより良い解決策ですか?
例:
class A {
};
class B {
std::vector<A> a;
// other member
};
class C {
std::map<int, B>
int id;
// other member.
};
Odbで C を sqlite に直接格納することはできません。