一个关于c++ list迭代器的问题
生活随笔
收集整理的這篇文章主要介紹了
一个关于c++ list迭代器的问题
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
?解答:
list迭代器和vector、deque不同,它不支持 < ,它只支持遞增,遞減,== 和 !=運算。
原因在于這幾種數據結構實現上的不同。vector和deque將元素在內存中連續保存,而list是在內存中以鏈表的方式存儲,因此前者可以方便地實現迭代器的大小比較(類似指針的大小比較)來體現元素的前后關系。而在list中,兩個指針的大小關系與他們指向的元素的前后并不一定是吻合的,實現 < 運算將會非常困難和低效。
總結
以上是生活随笔為你收集整理的一个关于c++ list迭代器的问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL中索引与视图的用法与区别详解
- 下一篇: c++ 迭代器支持的运算