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

作者: rtt2008 (rtt)   2014-11-27 09:31:19
請問各位大大, 在一般範例對於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和運作也沒問題
想請問 "!=" 和 "<" 有什麼差別嗎?
感謝各位!
作者: CaptainH (Cannon)   2014-11-27 09:38:00
http://www.cplusplus.com/reference/iterator/"<"需要random access iterator, 而"!="只需要input iterator所以更泛用一些因為vector iterator是random access iterator,所以兩種方法效果相同
作者: CumCumCum (2 hard 2 hard)   2014-11-29 07:41:00
不等於 就是 大於加上小於呀
作者: kwpn (ITSST)   2014-11-29 14:43:00
iteator沒有所謂的哪個較大

Links booklink

Contact Us: admin [ a t ] ucptt.com