这个问题的答案几乎肯定存在于其他地方,我无法想出这个词,请随时指导我其他资源。
我希望用C ++实现一个Python-esque列表。我不意味着我想要创建vector
。我知道这是怎么做到的。我要做的是创建一个可以存储以下值的数据结构:
[1, "a", 3.5]
像在Python中一样。我也希望它的大小是动态的。
这有名字吗?这已经在某处实现了吗?
我一直在尝试包含模板化节点的链接列表,但我不知道如何编写访问函数,当节点i
可能时,它将获得节点i
任何数据类型。想法,建议?先感谢您。
答案 0 :(得分:1)
像在Python中一样。我也希望它的大小是动态的。
嗯,对于固定尺寸,std::tuple<>
应该很适合你。
这有名字吗?这已经在某处实现了吗?
&#34;此&#34; 的名称是 容器,用于存储动态大小的任意类型序列 。虽然重点是 任意类型 占位符。
不幸的是,当前标准中没有std::any
类型,它支持动态大小的容器,如std::vector<std::any>
。
如果您无法使用工具链访问实验性c++17实施,则可以使用boost::any
类型。
答案 1 :(得分:0)
您需要vector
any
。 any
类型来自boost或C ++ 17。