初學者到C++,我想知道operator ++如何向後移動迭代器。正如我所知,iterator.begin()和iterator.end()分別返回指向第一個索引和最後一個索引的指針。C++中反向迭代器的工作原理
vector<int>::iterator it = myvector.begin();
當我們做它++它會移動到下一個索引。這對我來說很清楚,但我完全和逆向迭代器混淆了。
vector<int>::reverse_iterator rit = myvector.rbegin();
當我們做RIT ++它會移動到落後。我想知道這是如何實現的逆向迭代器的情況下。是運營商超載還是我不知道的東西?請給我正確的方式來理解這些事情。
請給予更多的細節知識。
這裏有一個很好的解釋:http://en.cppreference.com/w/cpp/iterator/reverse_iterator。 – juanchopanza 2014-10-07 06:11:36
感謝給定的鏈接。它清除了這個概念。你可以給我一個鏈接,它會顯示reverse_itrator的operator ++函數的清晰實現。 – Swapnil 2014-10-07 09:10:01