# FoundationClasses
TKernel
NCollection

# NCollection_Array2< TheItemType >::Iterator Class Reference

`#include <NCollection_Array2.hxx>`

Inheritance diagram for NCollection_Array2< TheItemType >::Iterator:

[legend]

## Public Member Functions

| Iterator (void)
| Empty constructor - for later Init.
| Iterator (const NCollection_Array2 &theArray)
| Constructor with initialisation.
void | Init (const NCollection_Array2 &theArray)
| Initialisation.
virtual Standard_Boolean | More (void) const
| Check end.
virtual void | Next (void)
| Make step.
virtual const TheItemType & | Value (void) const
| Constant value access.
virtual TheItemType & | ChangeValue (void) const
| Variable value access.
void * | operator new (size_t theSize, const Handle(NCollection_BaseAllocator)&theAllocator)
| Operator new for allocating iterators.

## Private Attributes

Standard_Integer | myCurrent
| Index of the current item.
Standard_Integer | mySize
| Total amount of items.
NCollection_Array2 * | myArray
| Pointer to the array being iterated.

### template<class TheItemType>
class NCollection_Array2< TheItemType >::Iterator

## Constructor & Destructor Documentation

template<class TheItemType>
NCollection_Array2< TheItemType >::Iterator::Iterator | ( | void |  | ) | `[inline]`

| Reimplemented from NCollection_BaseCollection< TheItemType >::Iterator.

template<class TheItemType>
NCollection_Array2< TheItemType >::Iterator::Iterator | ( | const NCollection_Array2 & | theArray | ) | `[inline]`

## Member Function Documentation

template<class TheItemType>
virtual TheItemType& NCollection_Array2< TheItemType >::Iterator::ChangeValue | ( | void |  | ) | const`[inline, virtual]`

| Implements NCollection_BaseCollection< TheItemType >::Iterator.

template<class TheItemType>
void NCollection_Array2< TheItemType >::Iterator::Init | ( | const NCollection_Array2 & | theArray | ) | `[inline]`

template<class TheItemType>
virtual Standard_Boolean NCollection_Array2< TheItemType >::Iterator::More | ( | void |  | ) | const`[inline, virtual]`

| Implements NCollection_BaseCollection< TheItemType >::Iterator.

template<class TheItemType>
virtual void NCollection_Array2< TheItemType >::Iterator::Next | ( | void |  | ) | `[inline, virtual]`

| Implements NCollection_BaseCollection< TheItemType >::Iterator.

template<class TheItemType>
void* NCollection_Array2< TheItemType >::Iterator::operator new | ( | size_t | theSize,
|  | const Handle(NCollection_BaseAllocator)& | theAllocator
| ) | `[inline]`

template<class TheItemType>
virtual const TheItemType& NCollection_Array2< TheItemType >::Iterator::Value | ( | void |  | ) | const`[inline, virtual]`

| Implements NCollection_BaseCollection< TheItemType >::Iterator.

## Field Documentation

template<class TheItemType>
NCollection_Array2* NCollection_Array2< TheItemType >::Iterator::myArray `[private]`

template<class TheItemType>
Standard_Integer NCollection_Array2< TheItemType >::Iterator::myCurrent `[private]`

template<class TheItemType>
Standard_Integer NCollection_Array2< TheItemType >::Iterator::mySize `[private]`

The documentation for this class was generated from the following file:

- NCollection_Array2.hxx