| ## Public API Reference

- Main Page
- Modules
- Namespaces
- Classes
- Files
- Related Pages

- Alphabetical List
- Class List
- Class Hierarchy
- Class Members

# csRefArray< T, Allocator > Class Template Reference

An array of smart pointers. More...

`#include <csutil/refarr.h>`

Inheritance diagram for csRefArray< T, Allocator >:

[legend]
List of all members.

## Public Member Functions
| csRefArray (int ilimit=0, int ithreshold=0)
| Initialize object to hold initially 'ilimit' elements, and increase storage by 'ithreshold' each time the upper bound is exceeded.
csPtr< T > | Pop ()
| Pop an element from tail end of array.

## Detailed Description

### template<class T, class Allocator = CS::Memory::AllocatorMalloc>
class csRefArray< T, Allocator >

An array of smart pointers.

Warning:
  Get(), GetExtend() and operator[] are unsafe for element manipulations, as they will return references to pointers and not proper csRef<> objects - assigning a pointer will circumvent reference counting and cause unexpected problems. Use Put() to manipulate elements of the array.

Definition at line 92 of file refarr.h.

## Constructor & Destructor Documentation

template<class T, class Allocator = CS::Memory::AllocatorMalloc>

csRefArray< T, Allocator >::csRefArray | ( | int | ilimit = `0`,
|  | int | ithreshold = `0` |
| ) |  |  | `[inline]`

Initialize object to hold initially 'ilimit' elements, and increase storage by 'ithreshold' each time the upper bound is exceeded.

Definition at line 99 of file refarr.h.

## Member Function Documentation

template<class T, class Allocator = CS::Memory::AllocatorMalloc>

csPtr<T> csRefArray< T, Allocator >::Pop | ( |  | ) | `[inline]`

Pop an element from tail end of array.

Reimplemented from csArray< T *, csRefArrayElementHandler< T * >, Allocator >.

Definition at line 105 of file refarr.h.

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

- csutil/refarr.h