为链表返回正确类型的迭代器

时间:2013-09-18 15:40:13

标签: c++ iterator linked-list

我正在实现一个通用列表:列表包含两种类型的迭代器:List<T>::IteratorList<T>ConstIterator

我有以下方法:

typename List<T>::Iterator List<T>::begin() {}
typename List<T>::ConstIterator List<T>::begin() const {}

这是为非常量列表返回非常量迭代器和为常量列表返回常量迭代器的合适方法吗?

1 个答案:

答案 0 :(得分:3)

是的,这就是它的完成方式in the standard library

与C ++ 11中引入的标准库扩展类似,您还可以提供cbegin()函数allows来获取const迭代器,即使列表不是const本身。