您能否让我了解一下我可以动态存储来自数据库的数据的最佳方式。我知道之前的列数,所以我想动态创建一个数据结构来保存所有数据,我需要重新组织数据以显示输出。换句话说 - 当我们输入查询“select * from table”时 - 结果将会出现。如何动态存储结果。 (使用结构,地图,列表......)。提前谢谢。
答案 0 :(得分:0)
简而言之,用于存储数据的数据结构实际上取决于您的数据使用模式。那就是:
答案 1 :(得分:0)
字符串数组(Delphi中的StringList,不确定C ++中有什么),每行一个,每行是逗号分隔的字符串。这可以很容易地转储并作为.csv文件读入Excel,导入到许多数据库中。 或者,XML文档可能是最好的。或者是其他东西。 “这取决于......”
答案 2 :(得分:-1)
STL有很多选择。如果您不想创建对象(如果行非常庞大并且您不需要访问返回的所有行),请使用类在类对象或字符串中存储一行。
1)使用向量 - 使用智能指针(shared_ptr)创建类的对象并将其推入向量中。由于向量中涉及的复制,我将使用shared_ptr。稍后排序
2)使用地图/集 - 如果您正在寻找更快的插入,则创建和插入元素可能成本很高。查找可能更快。
3)哈希地图 - 插入和查找时间比地图/集更好。