我的const和非const链接列表迭代器有何不同?

时间:2014-10-09 18:06:04

标签: c++ c++11 iterator

我有四个类,其中两个是迭代器:

LinkedList<T> -- holds the pointer to dummy node
LinkedListNode<T> -- Node with next and previous pointers and data T
LinkedListIterator<T> -- holds a pointer to LinkedListNode
LinkedListConstIterator<T> -- holds a pointer to LinkedListNode

他们都只需要实现前向迭代器功能。

在这种情况下,我的const迭代器中的函数会有什么不同?它只是意味着当我向用户返回一个指针或任何东西时,我应该使它成为const?

1 个答案:

答案 0 :(得分:0)

看看const_iterators如何适用于任何STL容器(例如:std::list)。如果你正在寻找你的迭代器类以类似的方式工作,那么你应该返回对const值的引用,即const T&