0

我正在寻找从具有多行和多列的数据表中存储信息。每列包含不同的类型(intdoublestd::string等),这些类型只有在运行时才能知道。

二维是vector最好boost::variant的方式,还是有更好的存储机制来实现这一点?

4

1 回答 1

2

从您的问题来看,尚不清楚您实际在寻找什么。答案取决于多种因素:

  • 假设每列有不同的类型,所有行的类型都相同吗?

  • 类型是在编译时已知还是仅在运行时已知?

在最简单的情况下,类型在编译时已知并且所有行都相同,为什么不简单地使用自定义类来表示列或std::tuple

如果不同列之间的类型不同,则必须使用万能类型,例如boost::any. 如果仅在运行时知道类型,这也可能是最简单的解决方案。

于 2014-08-28T18:47:35.487 回答