求好手推荐高效的c++容器

求高手推荐高效的c++容器
各位大哥好,
小弟近来用c++写了一个仿真程序,在程序中我自己写了一个class,需要用到一个容器来存储一些自己写的这个class,需要容器的特点是:
1,容器大小比较大,在50000到300000之间浮动(确切来说是随着迭代运算而不断增加,最后容器大小趋于稳定,我每次都只在容器屁股上一些加新的class进来),如 classA.push_back(ion)。

2,我不需要对容器排序,也就是说我不关心我的元素在class里面是怎么存的,不过我会遍历访问容器中的元素,例如

for(it=classA.begin();it != classA.end();++it)
{...}


3,我需要随机在容器中删除一些元素,而且这个操作比较频繁,在一个迭代中可能会需要删除1%的元素,这些元素是在我遍历这个容器的过程中被删掉的,他在容器中的位置随机,如 classA.erase(it)。

4,我需要在遍历这个容器的时候调用一些我自己写的类里面的类函数或者获取类的参量,如 indice_z = it->get_z();。

好吧多谢各位耐心看完前面的背景,现在问题来了,由于我的程序需要迭代太多次,6000000以上,所以我需要每次迭代的速度尽可能的快,我之前使用的是一个数组来存储我的类,访问的速度还算可观,可是由于我需要做删除元素添加元素等等这类的操作,加上之前的特点3,我选择了 stl里面的 LIST 作为容器。
然后我发现选用list以后,在debug模式下程序运行的时间就慢的不行了,简直无法接受(比用数组慢了起码10倍),后来经坛里的高人指点,改用Release模式运行程序,速度是有了很大的提升不过比起之前用数组来说还是很慢。
我主要的目的就是想提高程序的运行速度(经测试程序主要时间话费在了遍历容器以取得类中的某个参数上)。

所以想各位大大推荐一下有没有类似list这样的容器但是访问速度可以大幅提升的?或者说我在使用list的时候不太得当?亦或者有其他高效的库可以提供类似容器的?

打的字比较多了,小弟在此先行谢过各位
C++ 存储 迭代

------解决方案--------------------
顺序重要吗?如果顺序不重要,可以用vector,删除时:

(ary.end()-1).swap(it);
ary.push_back();

------解决方案--------------------
vector 预先分配足够的容量 + 成批一次性删除 + move减少拷贝
速度应该能上去
------解决方案--------------------
就用vector。删除第i个东西的时候用这个:
swap(v[i], v[v.size()-1]);
v.resize(v.size()-1);