---
name: "__gnu_parallel::_IteratorTriple"
section: "3"
platform: "linux"
package: "gcc"
version: "16.2.1+r23+gd564253eb6c8-1"
release: "Arch Linux 2026-11-01"
platforms: ["linux"]
url: "https://new.carta.tech/__gnu_parallel::_IteratorTriple"
---

# \_\_gnu\_parallel::\_IteratorTriple(3)

A triple of iterators. The usual iterator operations are applied to all three child iterators.

## NAME

\_\_gnu\_parallel::\_IteratorTriple\< \_Iterator1, \_Iterator2, \_Iterator3, \_IteratorCategory \> - A triple of iterators. The usual iterator operations are applied to all three child iterators.

## SYNOPSIS

\#include \<iterator.h\>

### Public Types

typedef **std::iterator\_traits**\< \_Iterator1 \>::difference\_type **difference\_type**\
 typedef \_IteratorCategory **iterator\_category**\
 typedef \_IteratorTriple \* **pointer**\
 typedef \_IteratorTriple & **reference**\
 typedef void **value\_type**\

### Public Member Functions

**\_IteratorTriple** (const \_Iterator1 &\_\_first, const \_Iterator2 &\_\_second, const \_Iterator3 &\_\_third)\
 **operator \_Iterator3** () const\
 \_IteratorTriple **operator+** (difference\_type \_\_delta) const\
 \_IteratorTriple & **operator++** ()\
 const \_IteratorTriple **operator++** (int)\
 difference\_type **operator-** (const \_IteratorTriple &\_\_other) const\
 \_IteratorTriple & **operator--** ()\
 const \_IteratorTriple **operator--** (int)\
 \_IteratorTriple & **operator=** (const \_IteratorTriple &\_\_other)\

### Public Attributes

\_Iterator1 **\_M\_first**\
 \_Iterator2 **\_M\_second**\
 \_Iterator3 **\_M\_third**\

## Detailed Description

### template\<typename \_Iterator1, typename \_Iterator2, typename \_Iterator3, typename \_IteratorCategory\>

class \_\_gnu\_parallel::\_IteratorTriple\< \_Iterator1, \_Iterator2, \_Iterator3, \_IteratorCategory \>"A triple of iterators. The usual iterator operations are applied to all three child iterators.

## Author

Generated automatically by Doxygen for libstdc++ from the source code.
