Console Library 4.7.0
A header-only library that makes C++ simple
Loading...
Searching...
No Matches
iter.h File Reference

提供些许关于迭代器的拓展功能。 More...

#include <iterator>
#include <utility>
#include <type_traits>

Go to the source code of this file.

Classes

struct  console::IteratorPair< Iter >
 存储迭代器对,可以直接范围 for。 More...
class  console::TiedIterators< It1, It2 >
 绑定迭代器对,一齐迭代。 More...

Namespaces

namespace  console
 本库所有组件所在的顶层命名空间。

Functions

template<class Iter>
IteratorPair< Iter > console::iterpair (Iter beg, Iter end)
 工厂函数,构建 IteratorPair。
template<class C1, class C2>
IteratorPair< TiedIterators< typename C1::iterator, typename C2::iterator > > console::zip (C1 &c1, C2 &c2)
 将两个容器“拉链”式地绑定在一起,以便同时迭代。
template<class C1, class C2>
IteratorPair< TiedIterators< typename C1::const_iterator, typename C2::const_iterator > > console::zip (const C1 &c1, const C2 &c2)
 针对两个常量容器的 zip 版本。
template<class C1, class C2>
IteratorPair< TiedIterators< typename C1::const_iterator, typename C2::iterator > > console::zip (const C1 &c1, C2 &c2)
 针对第一个容器为常量、第二个容器为非常量的 zip 版本。
template<class C1, class C2>
IteratorPair< TiedIterators< typename C1::iterator, typename C2::const_iterator > > console::zip (C1 &c1, const C2 &c2)
 针对第一个容器为非常量、第二个容器为常量的 zip 版本。

Detailed Description

提供些许关于迭代器的拓展功能。

本文件提供了两个主要工具:IteratorPair 用于将迭代器对包装为可范围遍历的对象, 以及 zip 函数族用于同时遍历两个容器,并在较短者结束时自动停止。

Author
MrXie1109
Date
2026