C++ C++;链表向量

C++ C++;链表向量,c++,C++,我有一个嵌套的模板参数,格式为 向量 也就是说,它是一个包含整数值和字符串的链表向量。如果这不是一个有效的表格,请让我知道。我的问题是怎么称呼它。如果“table”属于上述数据类型,可以将索引称为表[0]吗?如果是这样,我如何开始遍历该索引中的链表?使用您定义的嵌套数据结构,您完全可以调用您提到的索引,表[0]。您可以对其执行列表操作。为了使您的代码更干净,可以执行以下操作: list<string> listInVector = table[i]; list listInVect

我有一个嵌套的模板参数,格式为

向量


也就是说,它是一个包含整数值和字符串的链表向量。如果这不是一个有效的表格,请让我知道。我的问题是怎么称呼它。如果“table”属于上述数据类型,可以将索引称为表[0]吗?如果是这样,我如何开始遍历该索引中的链表?

使用您定义的嵌套数据结构,您完全可以调用您提到的索引,
表[0]
。您可以对其执行列表操作。为了使您的代码更干净,可以执行以下操作:

list<string> listInVector = table[i];
list listInVector=表[i];

因此,在对
表中的索引执行操作时,您不会感到困惑,相反,您可以使用该标识符使代码更干净

容器中的元素是单个元素。如果您希望有多个元素,例如
int
std::string
,则需要将它们放入适当的结构中,例如放入
std::pair

std::向量表;
要将列表中的元素移动到您可以使用的特定位置,例如:

std::list<std::pair<int, std::strin>>::iterator it(table[i].begin()), end(table[i].end());
for (; it != end; ++it) {
    std::cout << "int=" << it->first << " string=" << it->second << "\n";
} 
std::list::iterator it(表[i].begin()),end(表[i].end());
for(;it!=end;++it){
std::cout“如果这不是有效的表格,请告诉我”

是的,这是无效的,我想你的意思是:-

std::vectortable;

如何访问

比如:-

typedef std::pair<std::string , int> ele;
std::list<ele>::iterator it = table[i].begin(); //for ith table

for(;it!=table[i].end();++it)
 std::cout<<it->first<<" "<<it->second;
typedef std::pair ele;
std::list::iterator it=table[i].begin();//用于第i个表
for(;it!=表[i].end();++it)

std::coutHow如果链表不在向量中,你怎么开始遍历链表?这样做,但是对于
表[n]
中的链表。还要注意:你的
列表
无效。
std::list
没有这样的类型,假设你正在使用的是这种类型。我想你的意思是
std::vector
表[0]将只是您的第一个列表,然后您将像浏览任何其他列表一样浏览它。虽然您可能是指
list
请发布您已经尝试过的示例代码。考虑到复制容器往往非常昂贵,我猜您
d确实希望使用
std::list&listInVector=…`或
const
-其合格版本。
typedef std::pair<std::string , int> ele;
std::list<ele>::iterator it = table[i].begin(); //for ith table

for(;it!=table[i].end();++it)
 std::cout<<it->first<<" "<<it->second;