浠婂ぉ鍦ㄧ敤STL鍐欑害鐟熷か闂鐨勬椂鍊欙紝鍙戠幇vector鐨勮涓烘繪槸浜х敓璇″紓鐨勭粨鏋滐紝璁╂垜鐧炬濅笉寰楀叾瑙c?br>
鐪嬩笂闈唬鐮侊細
涓涓獀ector閲岄潰鏈?鍒?錛屾誨叡5涓厓绱犮傛妸涓涓凱浠e櫒pos鎸囧悜絎笁涓厓绱?錛屽彟澶栦竴涓猼emp鎸囧悜絎洓涓厓绱?錛岀劧鍚庤皟鐢╡rase鎶婄涓変釜鍏冪礌鎶規帀銆?br>娉ㄦ剰錛屽湪榪欎釜鏃跺欑戶緇В寮曠敤temp鐨勬椂鍊欙紝浼氬彂鐜板畠鎸囧悜鐨勫厓绱犵濂囩殑鍙樻垚浜?銆?br>
闂灝卞鍦╡rase涓婇潰錛屽湪C++ Reference涓婇潰鍐欓亾錛?br>Because vectors keep an array format, erasing on positions other than the vector end also moves all the elements after the segment erased to their new positions, which may not be a method as efficient as erasing in other kinds of sequence containers (deque, list).
This invalidates all iterator and references to elements after position or first.
鍒犻櫎vector涓涓厓绱狅紝瀵艱嚧瀹冨悗闈㈢殑鍏冪礌鍏ㄩ儴縐誨姩鍒版柊鐨勪綅緗紝鎵浠ュ鑷磋繖涓厓绱犱箣鍚庣殑鎵鏈夎凱浠e櫒閮藉け鏁堛?br>
鍦ㄤ嬌鐢ㄤ竴涓嚱鏁板墠搴旇瀵瑰畠鐨勮涓烘湁娓呮鐨勪簡瑙c傝皚璁般?/p>
1.鏈宸﹁竟鐨勬爣璇嗙鏄痓 | 琛ㄧずb鏄?.. |
2.b鐨勫乏杈規槸* |
琛ㄦ槑b鏄寚鍚?..鐨勬寚閽?br> |
3.*鐨勫乏杈規槸宸︽嫭鍙? |
宸︽嫭鍙鋒妸宸茬粡澶勭悊鐨勯儴鍒嗗0鏄庣粍鍚堝湪涓璧鳳紝鐭ラ亾閬囪鐩稿簲鐨勫彸鎷彿 |
4.(*b)宸﹁竟鏄柟鎷彿 |
琛ㄧず澶у皬涓?鐨勬暟緇? |
5.鍓╀笅鐨勭鍙峰艦鎴愬熀鏈被鍨媔nt |
琛ㄦ槑b鏄竴涓寚閽堬紝瀹冩寚鍚戜竴涓ぇ灝忎負3鐨刬nt鍨嬫暟緇勩? |