发布网友 发布时间:2022-08-28 23:54
共1个回答
热心网友 时间:2023-12-18 23:13
由于list的内部实现是双向链表,链表就要求迭代器(指针)只能依次从前向后(或从后向前)移动,依次移动一个位置,因此list只定义了++和--操作符,而没有定义+、-、+=和-=等操作符。所以要想list的迭代器移动一段距离,就需要自己编程实现,用一个小循环就行了, 代码: #include <list> using namespace std; list myList; … // myList的初始化及其他操作 list::const_iterator itList = myList.begin(); // itList向前移动len个距离 for ( int i= 0; i < len; i++ ) { ++itList; } … // 其他操作