[問題] iterator的作用是什麼?

作者: Lepton (輕子)   2014-11-27 23:46:31
不好意思,我想請教iterator是要怎麼用?
感覺起來好像就是for迴圈的index,或者說就是pointer的角色
為什麼還要分向前向後隨機等各種iterator?
時候宣告的時候還要依照int double之類的資料結構宣告
程式碼寫起來把直接數index還要長
要走訪整組數列我覺得用for_each甚至更簡潔一點
因為我一直沒有搞懂過到底要怎麼使用,還向各位請教
作者: putumaxally (putumaxally)   2014-11-27 23:58:00
我以為for_each是一種iterator
作者: shadow0326 (非議)   2014-11-28 00:01:00
你可以先研究一下什麼是STL容器
作者: chchwy (mat)   2014-11-28 00:15:00
map不是線性結構, 不用 iterator 要怎麼走遍全部?
作者: azureblaze (AzureBlaze)   2014-11-28 00:28:00
iterator是一般化的結果,不用知道容器的細節也能用不見得所有東西都可以index但是只要有foward_iterator就能夠走訪全部
作者: Caesar08 (Caesar)   2014-11-28 03:41:00
如果你常用STL容器跟algorithm的function,你就會知道了
作者: Lepton (輕子)   2014-11-28 12:43:00
嗯...我再想看看好了!謝謝!
作者: BlazarArc (Midnight Sun)   2014-11-28 13:31:00
我覺得是為了TMP才分的concept? 沒寫過所以不知道由來上面是說為什麼要分這麼多種,如果是為什麼要"使用"azureblaze已經解釋了,可參考 iterator pattern
作者: dirkc (3781615)   2014-12-01 01:26:00
一個小建議:先模仿看過的例子使用,覺得不需要的地方就不用常用STL和<algorithm>,經驗和感覺就會慢慢建立了按下return才發現樓上已經說過一樣的話了... orz
作者: fuha (豐原灌C哥)   2014-12-01 19:11:00
建立一個存取的抽像層

Links booklink

Contact Us: admin [ a t ] ucptt.com