[問題] std::vector iterator end()的使用

看板C_and_CPP (C/C++)作者 (rtt)時間11年前 (2014/11/27 09:31), 編輯推噓2(205)
留言7則, 3人參與, 最新討論串1/1
請問各位大大, 在一般範例對於end()都是使用it != myvector.end() 如以下例子 vector<int> myvector; for (int i=1; i<=5; i++) myvector.push_back(i); for (vector<int>::iterator it = myvector.begin() ; it != myvector.end(); ++it) cout << ' ' << *it; 我改成"it < myvector.end()" compiler和運作也沒問題 想請問 "!=" 和 "<" 有什麼差別嗎? 感謝各位! -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 125.227.3.236 ※ 文章網址: http://www.ptt.cc/bbs/C_and_CPP/M.1417051881.A.56F.html


11/27 09:41, , 2F
"<"需要random access iterator, 而"!="只需要input ite
11/27 09:41, 2F

11/27 09:41, , 3F
rator所以更泛用一些
11/27 09:41, 3F

11/27 09:44, , 4F
因為vector iterator是random access iterator,所以兩
11/27 09:44, 4F

11/27 09:44, , 5F
種方法效果相同
11/27 09:44, 5F

11/29 07:41, , 6F
不等於 就是 大於加上小於呀
11/29 07:41, 6F

11/29 14:43, , 7F
iteator沒有所謂的哪個較大
11/29 14:43, 7F
文章代碼(AID): #1KTdxfLl (C_and_CPP)
文章代碼(AID): #1KTdxfLl (C_and_CPP)