Created by Scott Robert Ladd at Coyote Gulch Productions.
A STL-compatible array class. More...
#include <array.h>
Public Types | |
| typedef Type | value_type |
| Type of an array element. | |
| typedef Type * | pointer |
| type of a pointer to an element | |
| typedef const Type * | const_pointer |
| Type of a constant pointer to an element. | |
| typedef Type & | reference |
| Type of a reference to an element. | |
| typedef const Type & | const_reference |
| Type of a constant reference to an element. | |
| typedef ptrdiff_t | difference_type |
| Difference type between two element pointers. | |
| typedef size_t | size_type |
| Size type for indexing array elements. | |
| typedef Type * | iterator |
| Iterator type. | |
| typedef const Type * | const_iterator |
| Constant iterator type. | |
| typedef Type * | reverse_iterator |
| Reverse iterator type. | |
| typedef const Type * | const_reverse_iterator |
| Constant reverse iterator type. | |
Public Member Functions | |
| array (size_t a_length) | |
| Default constructor. More... | |
| array (size_t a_length, const Type &a_init_value) | |
| Initialization constructor. More... | |
| array (const array< Type > &a_source) | |
| Copy constructor. More... | |
| array (size_t a_length, const Type *a_carray) | |
| Create from C-style array. More... | |
| virtual | ~array () throw () |
| Virtual destructor. More... | |
| array & | operator= (const array< Type > &a_source) throw () |
| Assignment operator. More... | |
| array & | operator= (const Type &a_value) throw () |
| Assign value to all elements. More... | |
| array & | operator= (const Type *a_carray) throw () |
| Assign from C-style array. More... | |
| const Type * | c_array () const throw () |
| Conversion to C-style array. More... | |
| Type & | operator[] (size_t n) throw (LIBCOYOTL_ARRAY_EXCEPTIONS) |
| Element access. More... | |
| Type | operator[] (size_t n) const throw (LIBCOYOTL_ARRAY_EXCEPTIONS) |
| Element access, constant array. More... | |
| void | append (const array< Type > &a_array) |
| Appending arrays. More... | |
| iterator | begin () throw () |
| Obtain beginning-of-sequence iterator. More... | |
| const_iterator | begin () const throw () |
| Obtain beginning-of-sequence iterator, constant array. More... | |
| iterator | end () throw () |
| Obtain end-of-sequence iterator. More... | |
| const_iterator | end () const throw () |
| Obtain end-of-sequence iterator, constant array. More... | |
| iterator | rbegin () throw () |
| Obtain beginning-of-sequence reverse iterator. More... | |
| const_iterator | rbegin () const throw () |
| Obtain beginning-of-sequence reverse iterator, constant array. More... | |
| iterator | rend () throw () |
| Obtain end-of-sequence reverse iterator. More... | |
| const_iterator | rend () const throw () |
| Obtain end-of-sequence reverse iterator, constant array. More... | |
| bool | operator== (const array< Type > &a_comparand) const throw () |
| Equals operator. More... | |
| bool | operator!= (const array< Type > &a_comparand) const throw () |
| Inequality operator. More... | |
| bool | operator< (const array< Type > &a_comparand) const throw () |
| Less-than operator. More... | |
| bool | operator<= (const array< Type > &a_comparand) const throw () |
| Less-than-or-equal-to operator. More... | |
| bool | operator> (const array< Type > &a_comparand) const throw () |
| Greater-than operator. More... | |
| bool | operator>= (const array< Type > &a_comparand) const throw () |
| Greater-than-or-equal-to operator. More... | |
| void | swap (array< Type > &a_source) throw () |
| Exchanges the corresponding elements of two arrays. More... | |
| size_t | size () const throw () |
| Number of elements. More... | |
| size_t | max_size () const throw () |
| Maximum container size. More... | |
| bool | empty () const throw () |
| Empty container check. More... | |
Protected Attributes | |
| Type * | m_array |
| Underlying allocated array. | |
| size_t | m_size |
| Length of the array. | |
This class defines a simple array with elements stored in contiguous allocated memory. The Standard C++ valarray is focused on numerical applications and largely incompatible with the STL. The std::vector includes dyanmic array features that simply aren't necessary for many applications.
| libcoyotl::array< Type >::array | ( | size_t | a_length | ) |
Constructs an array with a_length uninitialized elements. /param a_length number of elements in the array
References libcoyotl::array< Type >::m_array, and libcoyotl::array< Type >::m_size.
| libcoyotl::array< Type >::array | ( | size_t | a_length, |
| const Type & | a_init_value | ||
| ) |
Constructs an array with specific number of elements initialized to given value. /param a_length number of elements in the array /param a_init_value initial value of all array elements
References libcoyotl::array< Type >::m_array, and libcoyotl::array< Type >::m_size.
| libcoyotl::array< Type >::array | ( | const array< Type > & | a_source | ) |
Creates a new array identical to an existing one.
| a_source | - The a_source object |
References libcoyotl::array< Type >::m_array, and libcoyotl::array< Type >::m_size.
| libcoyotl::array< Type >::array | ( | size_t | a_length, |
| const Type * | a_carray | ||
| ) |
Constructs a new array by copying the elements of the specified C-style array. /param a_length number of elements in the array /param a_carray pointer to an array of with a_length elements
References libcoyotl::array< Type >::m_array, and libcoyotl::array< Type >::m_size.
|
virtual | |||||||||||||
A virtual destructor. By default, it does nothing; this is a placeholder that identifies this class as a potential base, ensuring that objects of a derived class will have their destructors called if they are destroyed through a base-class pointer.
| void libcoyotl::array< Type >::append | ( | const array< Type > & | a_array | ) |
Appends the a_other array to the target, extending the length of the target by the length of a_other.
| a_array | - Array to be appended to the target |
References libcoyotl::array< Type >::m_array, and libcoyotl::array< Type >::m_size.
|
inline | |||||||||||||
Returns an iterator to the first elements of the array.
|
inline | |||||||||||||
Returns a const iterator to the first element of the array.
|
inline | |||||||||||||
Returns a pointer to the internal C-style array encapsulated by this array. The returned pointer is constant, so no elements can be change via this function.
|
inline | |||||||||||||
Always false, as an array is never "empty". Required by Standard C++ algorithms and container definitions.
|
inline | |||||||||||||
Returns an iterator to the first element beyond the end of the array.
|
inline | |||||||||||||
Returns a const iterator to the first element beyond the end of the array.
|
inline | |||||||||||||
Returns the maximum size of the container, which is the same as the size(). Required by Standard C++ algorithms and container definitions.
|
inline | ||||||||||||||
Compares corresponding elements of the target array to the argument array, checking for inequality.
| a_comparand | - Comparand array |
|
inline | ||||||||||||||
Compares corresponding elements of the target array and the comparand array, checking that all target elements are less than comparand elements.
| a_comparand | - Comparand array |
|
inline | ||||||||||||||
Compares corresponding elements of the target array and the comparand array, checking that all target elements are less than or equal to comparand elements.
| a_comparand | - Comparand array |
| array< Type > & libcoyotl::array< Type >::operator= | ( | const array< Type > & | a_source | ) | |
| throw | ( | ||||
| ) | |||||
Assigns an existing object the state of another.
| a_source | - The source object |
| array< Type > & libcoyotl::array< Type >::operator= | ( | const Type & | a_value | ) | |
| throw | ( | ||||
| ) | |||||
Assigns a given value to all elements in an array.
| a_value | - Value to be assigned |
| array< Type > & libcoyotl::array< Type >::operator= | ( | const Type * | a_carray | ) | |
| throw | ( | ||||
| ) | |||||
Assign elements from a c-style array, assuming that c_array contains at least the number of elements in the target array.
| a_carray | - A pointer to a C-style array |
|
inline | ||||||||||||||
Compares corresponding elements of the target array to the argument array, checking for equality.
| a_comparand | - Comparand array |
|
inline | ||||||||||||||
Compares corresponding elements of the target array and the comparand array, checking that all target elements are greater than comparand elements.
| a_comparand | - Comparand array |
|
inline | ||||||||||||||
Compares corresponding elements of the target array and the comparand array, checking that all target elements are greater than or equal to comparand elements.
| a_comparand | - Comparand array |
|
inline | ||||||||||||||
Returns a reference to a specific element in an array.
| n | - Index of an element |
|
inline | ||||||||||||||
Returns a specific element in an array.
| n | - Index of an element |
|
inline | |||||||||||||
Returns a reverse iterator to the first element beyond the end of the array.
|
inline | |||||||||||||
Returns a reverse iterator to the first element beyond the end of the array.
|
inline | |||||||||||||
Returns a reverse iterator to the first element of the array.
|
inline | |||||||||||||
Returns a const reverse iterator to the first element of the array.
|
inline | |||||||||||||
Returns the number of elements in an array. Required by Standard C++ algorithms and container definitions.
| void libcoyotl::array< Type >::swap | ( | array< Type > & | a_source | ) | |
| throw | ( | ||||
| ) | |||||
Exchanges the corresponding elements of two arrays; used by various Standard C++ algorithms.
| a_source | - Another array |
© 1996-2005 Scott Robert Ladd. All rights reserved.
HTML documentation generated by Dimitri van Heesch's excellent Doxygen tool.