std::vector认为std::tuple和std::tuple<std::tuple>不是同一类型。
std::vector是C++标准库中的容器,用于存储一组动态大小的元素。它是一个线性序列容器,可以通过索引访问元素,并提供了动态增加、删除元素的功能。
std::tuple是C++标准库中的一个模板类,用于将多个值组合成一个元组。它可以存储不同类型的值,并通过std::get函数或std::tie函数进行访问。
std::tuple<std::tuple>表示一个嵌套的元组,即元组中的元素也是元组。它可以用于存储更复杂的数据结构,例如多维数组或树形结构。
虽然std::tuple和std::tuple<std::tuple>都是元组类型,但它们是不同的类型。std::tuple是一个元组类型,而std::tuple<std::tuple>是一个嵌套的元组类型。它们的类型不同,因此std::vector认为它们不是同一类型。
对于std::vector来说,它可以存储任意类型的元素,包括std::tuple和std::tuple<std::tuple>。如果需要在std::vector中存储std::tuple<std::tuple>类型的元素,可以直接声明std::vector<std::tuple<std::tuple>>来实现。
领取专属 10元无门槛券
手把手带您无忧上云