1
有什么办法可以将第二个循环的索引开始到(i + 1)?我试着用先进的方法试试,但是如果我把它插入for循环,每次迭代都会提前1。我只想让它从(i + 1)开始并继续。推进列表迭代器
for (list< list<string> >::const_iterator i = l.begin(); i != l.end(); i++)
if (i -> front() == s)
for(list<string>::const_iterator j = i ->begin(); j != i -> end(); j++)
cout << *j << " ";
j = i -> begin() + 1
扔了一个错误。j = advance(i, 1) -> begin()
也失败了。
list :: const_iterator j = i - > begin()** + 1 **。但是你最好确定'我'至少有一个元素。 –
Jon
嘿乔恩,我的清单绝对不是空的,我尝试了你的方法,但它一直在抛出一个错误。 –
啊,是的,这在一般情况下不起作用。 'std :: next'是正确的,尽管这需要C++ 11。 ++(i-> begin())'为C++ 03。 – Jon