在我的c ++程序运行期间,我将使用大量数据。 我希望能够根据某些标准使用其中一些。换句话说,一种带有请求指令的数据库。
是否可以创建内部数据库并将其与数据库请求指令一起使用?
我不需要在运行之前或之后保存数据。
编辑: 在我的情况下添加其他C库是不可行的,我将不得不使用我提供的内容。
答案 0 :(得分:3)
您可以查看SQLite in-memory database。
或者,使用具有一个或多个索引的容器,例如boost::multi_index
。
答案 1 :(得分:1)
您可以使用一些数据库理论:
1.将所有记录存储到std::vector
2.使用std::map
构建搜索/索引表。
索引表将为您提供更快的密钥搜索时间,而无需对所有数据进行排序。索引表的格式为std::map<Key_Type, unsigned int>
,其中unsigned int
是std::vector
数据库的索引。
答案 2 :(得分:0)
您可以使用内存结构,具体取决于此数据库需要的大小。它是Structs的集合还是一个适当的关系数据库或者只是大量的非结构化数据?