2012-04-12 87 views
2

我想知道一個std :: vector容器的元素的排序在刪除一個任意元素後總是被保留下來(例如:push 0,1,2,3,erase 1,get 0,2,3 )。擦除std :: vector的元素是否保留了排序?

+0

你爲什麼不自己測試一下? – L7ColWinters 2012-04-12 18:08:20

+2

@ L7ColWinters:那不會告訴他這個時間是否正常工作,或者是否確實有效。 – Mat 2012-04-12 18:10:50

+0

@Mat它會如果他使用不同的原語做多個測試用例 – L7ColWinters 2012-04-12 18:25:08

回答

1

是的。另外,還要對複雜音符(第23.3.6.5):

複雜性:T的析構函數刪除元素的次數等於 數量,但 T的移動賦值運算符是稱爲次數等於擦除元素之後的 向量中元素的數量。

和迭代器失效:

éFF學分:在或 擦除點之後迭代器失效和引用。

如果你不想通過標準來檢查這些細節,並沒有自信,那麼看看這個reference site

相關問題