使用C++中的list容器,假设定义了一个list nlist(30);和迭代器list::iterator it= nlist.begin(); 现在我想删除nlist中的第i个元素如何删除?我写的是nlist.erase(it+i);但是报错,原因是一个整型的i不能跟it直接相加。请问如何才能解决了这个问题?

list<int>::iterator it = nlist.begin();  
advance(it,i);
nlist.erase(it); 

这样就实现了,是不是很简单。

Logo

权威|前沿|技术|干货|国内首个API全生命周期开发者社区

更多推荐