[问题] 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