是否可以创建两个以迭代器作为元素的列表?

时间:2019-02-15 02:03:05

标签: c++ forward-declaration stdtuple

我想有两个包含std::tuple<IteratorOfOtherList, T>之类的元素的列表。有可能吗?

类似的东西:

#include <tuple>
#include <list>

class Foo { };
class Bar { };

class List2Iter;

typedef std::list<std::tuple<List2Iter, Foo>> List1;
typedef std::list<std::tuple<List1::iterator, Bar>> List2;
typedef List2::iterator List2Iter;

int main() {
    List1 list1{};
    List2 list2{};
    return 0;
}

显然,它不是在编译,因为std :: tuple需要完整的类型。

有没有解决方法?

0 个答案:

没有答案