Loading...
Searching...
No Matches
ClassArray< T > Class Template Reference Safe arrays of class objects. More...
Detailed Descriptiontemplate<class T> class soplex::ClassArray< T > Safe arrays of class objects. Class ClassArray provides safe arrays of general C++ objects (in contrast to data objects). The elements of an instance of ClassArray can be accessed just like ordinary C++ array elements by means of the index operator[](). Safety is provided by
Moreover, ClassArrays may easily be extended by inserting or appending elements to the ClassArray or shrunken by removing elements. Method reSize(int n) resets the ClassArrays length to A ClassArray may be used as arguments for standard C functions requiring pointers through the use of get_ptr() and get_const_ptr(). Internally, a ClassArray object allocates a block of memory that fits up to max() elements, only size() of them are used. This makes extension and shrinking methods perform better.
Definition at line 64 of file classarray.h. Constructor & Destructor Documentation◆ ClassArray() [1/2]
template<class T >
Copy constructor. Definition at line 340 of file classarray.h. References ClassArray< T >::data, ClassArray< T >::isConsistent(), ClassArray< T >::max(), ClassArray< T >::size(), and soplex::spx_alloc(). ◆ ClassArray() [2/2]
template<class T >
Default constructor. The constructor allocates a ClassArray containing
Definition at line 370 of file classarray.h. References ClassArray< T >::data, ClassArray< T >::isConsistent(), ClassArray< T >::max(), soplex::spx_alloc(), ClassArray< T >::themax, and ClassArray< T >::thesize. ◆ ~ClassArray()
template<class T >
Destructor. Definition at line 391 of file classarray.h. References ClassArray< T >::data, soplex::spx_free(), and ClassArray< T >::themax. Member Function Documentation◆ append() [1/3]
template<class T >
Appends all elements from Definition at line 135 of file classarray.h. References ClassArray< T >::insert(), and ClassArray< T >::thesize. ◆ append() [2/3]
template<class T >
Appends element Definition at line 123 of file classarray.h. References ClassArray< T >::insert(), and ClassArray< T >::thesize. ◆ append() [3/3]
template<class T >
Appends Definition at line 129 of file classarray.h. References ClassArray< T >::insert(), and ClassArray< T >::thesize. ◆ clear()
template<class T >
Removes all elements. Definition at line 211 of file classarray.h. References ClassArray< T >::thesize. ◆ get_const_ptr()
template<class T >
Gets a const C pointer to the data. Definition at line 117 of file classarray.h. References ClassArray< T >::data. ◆ get_ptr()
template<class T >
Gets a C pointer to the data. Definition at line 111 of file classarray.h. References ClassArray< T >::data. ◆ insert() [1/3]
template<class T >
Inserts all elements from Definition at line 176 of file classarray.h. References ClassArray< T >::data, ClassArray< T >::insert(), and ClassArray< T >::size(). ◆ insert() [2/3]
template<class T >
Inserts move Definition at line 141 of file classarray.h. References ClassArray< T >::data, ClassArray< T >::reSize(), and ClassArray< T >::thesize. Referenced by ClassArray< T >::append(), ClassArray< T >::append(), ClassArray< T >::append(), ClassArray< T >::insert(), and ClassArray< T >::insert(). ◆ insert() [3/3]
template<class T >
Inserts Definition at line 164 of file classarray.h. References ClassArray< T >::data, and ClassArray< T >::insert(). ◆ isConsistent()
template<class T >
Consistency check. Definition at line 324 of file classarray.h. References ClassArray< T >::data, ClassArray< T >::memFactor, SPX_MSG_INCONSISTENT, ClassArray< T >::themax, and ClassArray< T >::thesize. Referenced by ClassArray< T >::ClassArray(), ClassArray< T >::ClassArray(), and ClassArray< T >::operator=(). ◆ last() [1/2]
template<class T >
Reference to last element. Definition at line 97 of file classarray.h. References ClassArray< T >::data, and ClassArray< T >::thesize. ◆ last() [2/2]
template<class T >
Reference to last const element. Definition at line 104 of file classarray.h. References ClassArray< T >::data, and ClassArray< T >::thesize. ◆ max()
template<class T >
Returns maximum number of elements. Even though the ClassArray currently holds no more than size() elements, up to max() elements could be added without need to reallocated free store. Definition at line 243 of file classarray.h. References ClassArray< T >::themax. Referenced by ClassArray< T >::ClassArray(), and ClassArray< T >::ClassArray(). ◆ operator=()
template<class T >
Assignment operator. Definition at line 308 of file classarray.h. References ClassArray< T >::data, ClassArray< T >::isConsistent(), ClassArray< T >::reSize(), and ClassArray< T >::size(). ◆ operator[]() [1/2]
template<class T >
Reference to Definition at line 81 of file classarray.h. References ClassArray< T >::data, and ClassArray< T >::thesize. ◆ operator[]() [2/2]
template<class T >
Reference to Definition at line 89 of file classarray.h. References ClassArray< T >::data, and ClassArray< T >::thesize. ◆ reMax()
template<class T >
Resets maximum number of elements. The value of max() is reset to
Definition at line 257 of file classarray.h. References ClassArray< T >::data, ClassArray< T >::size(), soplex::spx_alloc(), soplex::spx_free(), ClassArray< T >::themax, and ClassArray< T >::thesize. Referenced by ClassArray< T >::reSize(). ◆ remove()
template<class T >
Removes Definition at line 188 of file classarray.h. References ClassArray< T >::data, ClassArray< T >::size(), and ClassArray< T >::thesize. ◆ removeLast()
template<class T >
Removes Definition at line 202 of file classarray.h. References ClassArray< T >::size(), and ClassArray< T >::thesize. ◆ reSize()
template<class T >
Resets size to Resizing a ClassArray to less than the previous size, involves discarding its last elements. Resizing to a larger value involves adding uninitialized elements (similar to append()). If neccessary, also memory will be reallocated. Definition at line 227 of file classarray.h. References ClassArray< T >::memFactor, ClassArray< T >::reMax(), ClassArray< T >::themax, and ClassArray< T >::thesize. Referenced by ClassArray< T >::insert(), and ClassArray< T >::operator=(). ◆ size()
template<class T >
Returns number of elements. Definition at line 217 of file classarray.h. References ClassArray< T >::thesize. Referenced by ClassArray< T >::ClassArray(), ClassArray< T >::insert(), ClassArray< T >::operator=(), SVSetBase< R >::operator=(), SVSetBase< R >::operator=(), ClassArray< T >::reMax(), ClassArray< T >::remove(), and ClassArray< T >::removeLast(). Member Data Documentation◆ data
template<class T >
the array of elements Definition at line 69 of file classarray.h. Referenced by ClassArray< T >::ClassArray(), ClassArray< T >::ClassArray(), ClassArray< T >::get_const_ptr(), ClassArray< T >::get_ptr(), ClassArray< T >::insert(), ClassArray< T >::insert(), ClassArray< T >::insert(), ClassArray< T >::isConsistent(), ClassArray< T >::last(), ClassArray< T >::last(), ClassArray< T >::operator=(), ClassArray< T >::operator[](), ClassArray< T >::operator[](), ClassArray< T >::reMax(), ClassArray< T >::remove(), and ClassArray< T >::~ClassArray(). ◆ memFactor
template<class T >
memory extension factor. When a ClassArray is reSize()d to more than max() elements, the new value for max() is not just set to the new size but rather to Definition at line 76 of file classarray.h. Referenced by ClassArray< T >::isConsistent(), and ClassArray< T >::reSize(). ◆ themax
template<class T >
the length of array data and Definition at line 68 of file classarray.h. Referenced by ClassArray< T >::ClassArray(), ClassArray< T >::isConsistent(), ClassArray< T >::max(), ClassArray< T >::reMax(), ClassArray< T >::reSize(), and ClassArray< T >::~ClassArray(). ◆ thesize
template<class T >
number of used elements in array data Definition at line 67 of file classarray.h. Referenced by ClassArray< T >::append(), ClassArray< T >::append(), ClassArray< T >::append(), ClassArray< T >::ClassArray(), ClassArray< T >::clear(), ClassArray< T >::insert(), ClassArray< T >::isConsistent(), ClassArray< T >::last(), ClassArray< T >::last(), ClassArray< T >::operator[](), ClassArray< T >::operator[](), ClassArray< T >::reMax(), ClassArray< T >::remove(), ClassArray< T >::removeLast(), ClassArray< T >::reSize(), and ClassArray< T >::size().
|