64,281
社区成员
发帖
与我相关
我的任务
分享
template <class InputIterator, class T>
InputIterator find(
InputIterator first, InputIterator last, const T& value) {
while (first != last && *first != value) ++first;
return first;
}
list<int> iList;
list<int>::iterator p =
find(iList.begin(), iList.end(), 2);
cout << "before: p == " << *p << endl;
advance(p, 2); // same as p = p + 2;
cout << "after : p == " << *p << endl;
int k = 0;
distance(p, iList.end(), k);
cout << "k == " << k << endl;
[quote=引用 3 楼 zaokang5603 的回复:]
[quote=引用 2 楼 zaokang5603 的回复:]
这个应该是内存越界,定义了list,但没有数据放入,还没有内存分配,我记得这个容器是动态分配,具体详细忘记了!
你填个数据试试
加一个非空判断很难么?
[quote=引用 2 楼 zaokang5603 的回复:]
这个应该是内存越界,定义了list,但没有数据放入,还没有内存分配,我记得这个容器是动态分配,具体详细忘记了!
你填个数据试试
这个应该是内存越界,定义了list,但没有数据放入,还没有内存分配,我记得这个容器是动态分配,具体详细忘记了!
你填个数据试试