老熟女激烈的高潮_日韩一级黄色录像_亚洲1区2区3区视频_精品少妇一区二区三区在线播放_国产欧美日产久久_午夜福利精品导航凹凸

重慶分公司,新征程啟航

為企業提供網站建設、域名注冊、服務器等服務

刪除C++容器值相關方法是怎么樣的

這期內容當中小編將會給大家帶來有關刪除C++容器值相關方法是怎么樣的,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。

我們提供的服務有:成都做網站、網站建設、微信公眾號開發、網站優化、網站認證、旌陽ssl等。為千余家企事業單位解決了網站和推廣的問題。提供周到的售前咨詢和貼心的售后服務,是有科學管理、有技術的旌陽網站制作公司

在程序開發的過程中,C++編程語言中的容器里有會有很多值,有些是比較有用的,而有些是沒用的。那么對于這些沒有用的值我們應該如何進行刪除呢?在這里我們將會為大家詳細介紹刪除C++容器值的相關方法。

C++的容器中一般都提供erase函數,此函數接收的參數一般有一個是一個迭代器:

如果刪除C++容器值的話,我們可能一般都用過:

list c;  // todo insert items  for (list::iterator i = c.begin(); i!= c.end(); ++i)  {  if ((*i)>10)  {  // 如果有一個值大于10,刪除之  c.erase(i);  break;  }  }

上述代碼在刪除一個元素的時候并沒有問題。。。但是我們想刪除所有大于10的值,于是:

list c;  // todo insert items  for (list::iterator i = c.begin(); i!= c.end(); ++i)  {  if ((*i)>10)  {  // 刪除所有大于10的值  c.erase(i);  }  }

滿懷希望的編譯,運行。。。于是異常發生。。。啊。。。哦。。。

原來是刪除迭代器i后,i所指的元素已經失效了,然后給i++,它已經不在存在了。。。于是絞盡腦汁,出籠了下面的刪除C++容器值代碼:

list c;  // todo insert items  list::iterator nextitr = c.begin();  for (list::iterator i = c.begin();;)  {  if(nextitr == c.end())  break;  ++nextitr;  if ((*i)>10)  {  // 如果有一個值大于10,刪除之  c.erase(i);  }  i = nextitr;  }

上面的代碼很容易理解,即在刪除一個迭代器之前,把它的之后的迭代器先存儲,然后在下次循環的時候利用之前存儲的迭代器。

OK,我們看到上面這段代碼可以工作了,行為似乎也還正確,只是。。。代碼似乎多了點。我想代碼能夠少點就好了,邏輯也不要那么麻煩。那么我們看下面的代碼(轉載自Effective STL)。

list c;  // todo insert items  for (list::iterator i = c.begin(); i!= c.end();)  {  if ((*i)>10)  {  // 如果有一個值大于10,刪除之  c.erase(i++);  }  else  i++;  }

嗯。。。高手就是高手(我以前根本沒有在意過++i和i++在使用的過程中能有這么大的區別)好了,***再提供一個版本,利用list的remove_if函數。

bool fun(int i)  {  if(i>10)  return true;  else  return false;  }  list c;  // todo insert items  c.remove_if(fun);

嗯,其實刪除C++容器值的方式還是挺多的。

上述就是小編為大家分享的刪除C++容器值相關方法是怎么樣的了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注創新互聯行業資訊頻道。


當前標題:刪除C++容器值相關方法是怎么樣的
URL地址:http://www.xueling.net.cn/article/iigspi.html

其他資訊

在線咨詢
服務熱線
服務熱線:028-86922220
TOP
主站蜘蛛池模板: 婷婷综合缴情亚洲AV | 国产精品高潮呻吟久久a | 日本不卡在线一区二区三区视频 | 日韩免费观看av | 亚洲一区不卡 | 亚洲专区久久 | xp123成人影院 | 日韩一级在线视频 | 永久黄网站色视频免费看 | 97超碰人人在线 | 国产精品原创巨作av | 硬汉视频在线观看手机版 | 综合激情丁香久久狠狠 | 欧亚精品一区三区免费 | 三级做A全过程在线观看 | 亚洲天堂视频网 | 色综合天天综合网国产成人综合天 | 素人天堂 | 92国产精品午夜福利免费 | 曰本A级毛片无卡免费视频 久久网精品三级片 | 国产又黄又潮娇喘视频在线观看 | 国产日产亚洲精品 | 日韩亚洲国产精品 | 国产精品久久久久7777按摩 | 亚洲国产精品一区二区三区 | 亚洲影视综合网 | 国产乱轮在线视频 | 禁18在线观看免费网站 | 免费看片A片人人免费 | 一色桃子中文字幕人妻熟女作品 | 福利视频一二三在线视频免费观看 | 就去色婷婷 | 先锋影音最新色资源站 | 成人精品一区二区 | 女人久久久www免费人成看片 | 国产精品人妖ts系列视频 | 超碰成人在线播放 | 国产一级伦理片 | 国产v日产∨综合v精品视频 | 精品国产2区 | 国产精品人妻一区二区网站 |