我在进行list的反向遍历时,出现了一些奇怪的错误。
出错的代码长这个样子
for(list<int>::iterator it = form.rbegin(); it != form.rend();++it)
{
if(a[*it]==a[num]) form.insert(++it,num);
}
然后报出来了这个错误
36 45 C:\Users\student\Desktop\未命名1.cpp [Error] conversion from 'std::list<int>::reverse_iterator {aka std::reverse_iterator<std::_List_iterator<int> >}' to non-scalar type 'std::list<int>::iterator {aka std::_List_iterator<int>}' requested
36 51 C:\Users\student\Desktop\未命名1.cpp [Error] no match for 'operator!=' (operand types are 'std::list<int>::iterator {aka std::_List_iterator<int>}' and 'std::list<int>::reverse_iterator {aka std::reverse_iterator<std::_List_iterator<int> >}')
无法理解为什么会出现这个错误。。。
在线等待各位大佬的帮助。