原文:STL中使用reverse_iterator時,如何正確使用erase函數

假設有一個list容器,順序存儲了 一個 個整數。現在要使用reverse iterator迭代器來查找值為 和 的元素,並且將這兩個數刪除。先來看以下的解決方法: 我們重點看 行三行代碼是否正確。這是我在不經過思考就順手寫出來的代碼,這三行代碼雖然編譯可以通過,但是是錯誤的。 首先,我們知道不可以直接使用reverse iterator作為參數來調用erase函數的。 錯誤思路 我的初始思路是 ...

2013-10-26 21:17 0 3349 推薦指數:

查看詳情

如何在遍歷中使用 iterator/reverse_iterator 刪除元素

如何在遍歷中使用 iterator/reverse_iterator 刪除元素 羅朝輝 ( http://www.cnblogs.com/kesalin/ ) 本文遵循“ 署名-非商業用途-保持一致”創作公用協議 眾所周知,在使用迭代器遍歷 STL 容器 ...

Tue Apr 22 17:31:00 CST 2014 1 2212
STL iteratorreverse_iterator

先看一段代碼: 代碼首先在一個deque中插入1到9,然后查找元素值為2和7的位置,分別賦值給迭代器pos1和pos2,然后輸出,由於STL中的操作總是左開右閉的區間,即[2,7),所以輸出2 3 4 5 6,7不會輸出。 接下來將迭代器轉換成逆向迭代器,再次輸出,對於反向迭代器 ...

Thu Nov 24 23:18:00 CST 2016 0 1718
正確使用stl map的erase方法

先聲明:下面的文章是針對windows的用法,因為std::map的erase函數的windows的實現版本是返回一個std::map的迭代器,但是STL標准里面的該函數的返回值確是: map.erase有3個重載:void erase ( iterator ...

Sun Oct 30 01:43:00 CST 2016 0 6443
std::reverse_iterator::base

google chromium base MRU_Cache 支持反向erase iterator Erase(iterator pos) { deletor_(pos->second); index_.erase(pos->first); return ...

Fri Jul 08 23:36:00 CST 2016 0 1807
STL容器 erase使用陷井

有很多陷阱,網上也有不少網友提到如何在STL中安全刪除元素這些問題。本文將討論編程過程中最經常使用的兩個序 ...

Mon Apr 07 01:15:00 CST 2014 0 3641
 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM