Pivotal GemFire Native Client Cache Reference  9.0.6
gemfire::VectorT< PTR_TYPE > Class Template Reference

Vector template type class. More...

Inherited by gemfire::CacheableObjectArray, gemfire::VectorOfCacheable, and gemfire::VectorOfCacheableKey.

Data Structures

class  Iterator
 Interface of an iterator for VectorT. More...
 

Public Member Functions

PTR_TYPE at (int32_t n)
 Return the n'th element with bounds checking. More...
 
const PTR_TYPE at (int32_t n) const
 Return the n'th element with bounds checking. More...
 
PTR_TYPE back ()
 returns the last element. More...
 
const PTR_TYPE back () const
 returns the last element. More...
 
Iterator begin () const
 Get an iterator pointing to the start of vector. More...
 
int32_t capacity () const
 return the number of elements allocated for this vector. More...
 
void clear ()
 erases all elements. More...
 
bool empty () const
 return true if the vector's size is 0. More...
 
Iterator end () const
 Get an iterator pointing to the end of vector. More...
 
void erase (int32_t index)
 Removes the object at the specified index from a vector. More...
 
PTR_TYPE front ()
 returns the first element. More...
 
const PTR_TYPE front () const
 returns the first element. More...
 
void insert (int32_t index, const PTR_TYPE &t)
 insert object at the given position. More...
 
int32_t length () const
 synonym for size. More...
 
int32_t max_size () const
 return the largest possible size of the vector. More...
 
VectorToperator= (const VectorT &other)
 assignment operator More...
 
PTR_TYPE operator[] (int32_t n)
 Return the n'th element. More...
 
const PTR_TYPE operator[] (int32_t n) const
 Return the n'th element. More...
 
void pop_back ()
 removes the last element. More...
 
void push_back (const PTR_TYPE &e)
 insert a new element at the end. More...
 
void reserve (int32_t n)
 reallocate a vector to hold n elements. More...
 
void resize (int32_t n, const PTR_TYPE &t=gemfire::NullSharedBase::s_instancePtr)
 inserts or erases elements at the end such that size becomes n. More...
 
int32_t size () const
 return the size of the vector. More...
 
void swap (VectorT &other)
 swaps the contents of two vectors. More...
 
 VectorT ()
 Create an empty vector. More...
 
 VectorT (int32_t n)
 Create a vector with n elements allocated. More...
 
 VectorT (int32_t n, const PTR_TYPE &t)
 Create a vector with n copies of t. More...
 
 VectorT (const VectorT &other)
 copy constructor More...
 
 ~VectorT ()
 destructor, sets all SharedPtr elements to NULLPTR More...
 

Detailed Description

template<class PTR_TYPE>
class gemfire::VectorT< PTR_TYPE >

Vector template type class.

Constructor & Destructor Documentation

template<class PTR_TYPE>
gemfire::VectorT< PTR_TYPE >::VectorT ( )
inline

Create an empty vector.

template<class PTR_TYPE>
gemfire::VectorT< PTR_TYPE >::VectorT ( int32_t  n)
inline

Create a vector with n elements allocated.

template<class PTR_TYPE>
gemfire::VectorT< PTR_TYPE >::VectorT ( int32_t  n,
const PTR_TYPE &  t 
)
inline

Create a vector with n copies of t.

template<class PTR_TYPE>
gemfire::VectorT< PTR_TYPE >::VectorT ( const VectorT< PTR_TYPE > &  other)
inline

copy constructor

template<class PTR_TYPE>
gemfire::VectorT< PTR_TYPE >::~VectorT ( )
inline

destructor, sets all SharedPtr elements to NULLPTR

Member Function Documentation

template<class PTR_TYPE>
PTR_TYPE gemfire::VectorT< PTR_TYPE >::at ( int32_t  n)
inline

Return the n'th element with bounds checking.

template<class PTR_TYPE>
const PTR_TYPE gemfire::VectorT< PTR_TYPE >::at ( int32_t  n) const
inline

Return the n'th element with bounds checking.

template<class PTR_TYPE>
PTR_TYPE gemfire::VectorT< PTR_TYPE >::back ( )
inline

returns the last element.

template<class PTR_TYPE>
const PTR_TYPE gemfire::VectorT< PTR_TYPE >::back ( ) const
inline

returns the last element.

template<class PTR_TYPE>
Iterator gemfire::VectorT< PTR_TYPE >::begin ( ) const
inline

Get an iterator pointing to the start of vector.

template<class PTR_TYPE>
int32_t gemfire::VectorT< PTR_TYPE >::capacity ( ) const
inline

return the number of elements allocated for this vector.

template<class PTR_TYPE>
void gemfire::VectorT< PTR_TYPE >::clear ( )
inline

erases all elements.

template<class PTR_TYPE>
bool gemfire::VectorT< PTR_TYPE >::empty ( ) const
inline

return true if the vector's size is 0.

template<class PTR_TYPE>
Iterator gemfire::VectorT< PTR_TYPE >::end ( ) const
inline

Get an iterator pointing to the end of vector.

template<class PTR_TYPE>
void gemfire::VectorT< PTR_TYPE >::erase ( int32_t  index)
inline

Removes the object at the specified index from a vector.

template<class PTR_TYPE>
PTR_TYPE gemfire::VectorT< PTR_TYPE >::front ( )
inline

returns the first element.

template<class PTR_TYPE>
const PTR_TYPE gemfire::VectorT< PTR_TYPE >::front ( ) const
inline

returns the first element.

template<class PTR_TYPE>
void gemfire::VectorT< PTR_TYPE >::insert ( int32_t  index,
const PTR_TYPE &  t 
)
inline

insert object at the given position.

template<class PTR_TYPE>
int32_t gemfire::VectorT< PTR_TYPE >::length ( ) const
inline

synonym for size.

template<class PTR_TYPE>
int32_t gemfire::VectorT< PTR_TYPE >::max_size ( ) const
inline

return the largest possible size of the vector.

template<class PTR_TYPE>
VectorT& gemfire::VectorT< PTR_TYPE >::operator= ( const VectorT< PTR_TYPE > &  other)
inline

assignment operator

template<class PTR_TYPE>
PTR_TYPE gemfire::VectorT< PTR_TYPE >::operator[] ( int32_t  n)
inline

Return the n'th element.

template<class PTR_TYPE>
const PTR_TYPE gemfire::VectorT< PTR_TYPE >::operator[] ( int32_t  n) const
inline

Return the n'th element.

template<class PTR_TYPE>
void gemfire::VectorT< PTR_TYPE >::pop_back ( )
inline

removes the last element.

template<class PTR_TYPE>
void gemfire::VectorT< PTR_TYPE >::push_back ( const PTR_TYPE &  e)
inline

insert a new element at the end.

template<class PTR_TYPE>
void gemfire::VectorT< PTR_TYPE >::reserve ( int32_t  n)
inline

reallocate a vector to hold n elements.

template<class PTR_TYPE>
void gemfire::VectorT< PTR_TYPE >::resize ( int32_t  n,
const PTR_TYPE &  t = gemfire::NullSharedBase::s_instancePtr 
)
inline

inserts or erases elements at the end such that size becomes n.

Not to be confused with reserve which simply allocates the space, resize fills the space with active elements.

template<class PTR_TYPE>
int32_t gemfire::VectorT< PTR_TYPE >::size ( ) const
inline

return the size of the vector.

template<class PTR_TYPE>
void gemfire::VectorT< PTR_TYPE >::swap ( VectorT< PTR_TYPE > &  other)
inline

swaps the contents of two vectors.


GemFire C++ Cache API Documentation