好的,所以我现在有两个(完全不相关的、不同的项目)类使用迭代器。一个具有iterator
并按reverse_iterator
预期工作,另一个当前具有iterator
和半损坏const_iterator
(具体来说,因为 const_iterator 派生自迭代器,所以代码LinkedList<int>::iterator i = const_list.begin()
是有效的并且允许您修改 const 定义的列表......)。
我打算将所有四种类型都添加到这个类中......如果可以的话。
我将如何继续最小化复制/粘贴代码并仅更改返回类型?base_iterator
创建一个喜欢继承的基类?创建一个iterator
orconst_iterator
并从中继承?从一些 std:: 类继承?如果这些案例中的任何一个是“最佳”方法,那么哪些代码在哪里?
也许没有一个替代品是好的?我在这里很迷茫,找不到太多参考资料。
任何建议都值得赞赏,但请记住,我是该主题的新手(通常是迭代器和 C++,尤其是 OOP)。我尝试研究 GCC 附带的头文件,但徒劳无功——它们并不完全是我正在寻找的教程。