【发布时间】:2012-09-19 23:10:17
【问题描述】:
我有两门课
class A{};
class B{
Private:
list<A*> * mylist;
remove();
};
void B:: remove() // To remove list mylist
{
list<A*>::iterator iter = mylist->begin;
for(;iter!=mylist->end;)
{
list<A*>::iterator iter1 = iter++;
--iter;
delete (*iter);
mylist->erase(iter);
iter = iter1;
}
}
我在删除功能中遇到分段错误,请纠正我做错的地方。
【问题讨论】:
-
一方面,
mylist似乎未初始化。请发布一个完整的、最小的示例程序来演示该问题。请参阅ssccee.org 了解更多信息。