gpt4 book ai didi

c++ - STL迭代器进入构造函数

转载 作者:太空宇宙 更新时间:2023-11-03 10:35:49 24 4
gpt4 key购买 nike

我想知道如何为接受任何 STL 输入迭代器的自定义类(在本例中为链表)编写构造函数。我已经创建了一个自定义 Iterator 类,它与我的 List 类相关联。

这很好用。

template <typename T>  
List<T>::List(Iterator beg, Iterator end) : first_(0) {
while (beg != end)
insertLast(*beg++);
}

我已经成功地创建了一个构造函数来接收这样的列表迭代器。

List<T>::List(typename list<T>::iterator s, typename list<T>::iterator e) :
first_(0) {
while (s != e)
insertLast(*s++);

我的 STL-fu 不太了解如何将其泛化为接受任何输入迭代器
有什么帮助吗?

谢谢!

最佳答案

我觉得就这么简单:

template <typename T, typename Iterator>  
List <T>::List(Iterator beg, Iterator end) : first_(0) {
while (beg != end)
insertLast(*beg++);
}

关于c++ - STL迭代器进入构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3865958/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com