当数据量在百万级或者千万级以上时:首先链表不要考虑,主要是内存不连续导致的执行效率超低。new应该是效率最高的办法,但是内存安全需要非常小心的维护。vector的取址效率比new低2到3倍,但是在取址过程中会有越界检查等,安全方面基本不用担心。一般的建议是使用vector,在特别需要效率的地方用一个指针指向vector取址即可。ru:vector<int> A;int *pA = &A[0];int nSize=A.size();for(int i=0; i<nSize; i++) pA[i] = ...;上面的代码就是用指针代替vector取址以达到加速目的,但是这种办法在多线程中还是存在安全问题,到底怎么办还是看自己的需求吧。