...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
A scalar (i.e. unique value) vector of type T
and a given size
A scalar (i.e. unique value) vector of type T
and a given size
. This is a virtual vector in the sense that no memory is allocated for storing the unique value more than once: it still acts like any other vector. However assigning a new value will change all the value at once. vector into a normal vector. It must first be assigned to another normal vector by any suitable means. Its memory footprint is constant.
More...
Inherits vector_container< scalar_vector< T, ALLOC > >.
Classes | |
class | const_iterator |
Public Types | |
typedef ALLOC::size_type | size_type |
typedef ALLOC::difference_type | difference_type |
typedef T | value_type |
typedef const T & | const_reference |
typedef T & | reference |
typedef const vector_reference < const self_type > | const_closure_type |
typedef vector_reference < self_type > | closure_type |
typedef dense_tag | storage_category |
typedef const_iterator | iterator |
typedef reverse_iterator_base < const_iterator > | const_reverse_iterator |
Public Member Functions | |
BOOST_UBLAS_INLINE | scalar_vector (size_type size, const value_type &value=value_type(1)) |
BOOST_UBLAS_INLINE | scalar_vector (const scalar_vector &v) |
BOOST_UBLAS_INLINE size_type | size () const |
BOOST_UBLAS_INLINE void | resize (size_type size, bool=true) |
BOOST_UBLAS_INLINE const_pointer | find_element (size_type) const |
BOOST_UBLAS_INLINE const_reference | operator() (size_type) const |
BOOST_UBLAS_INLINE const_reference | operator[] (size_type) const |
BOOST_UBLAS_INLINE scalar_vector & | operator= (const scalar_vector &v) |
BOOST_UBLAS_INLINE scalar_vector & | assign_temporary (scalar_vector &v) |
BOOST_UBLAS_INLINE void | swap (scalar_vector &v) |
BOOST_UBLAS_INLINE const_iterator | find (size_type i) const |
BOOST_UBLAS_INLINE const_iterator | begin () const |
BOOST_UBLAS_INLINE const_iterator | end () const |
BOOST_UBLAS_INLINE const_reverse_iterator | rbegin () const |
BOOST_UBLAS_INLINE const_reverse_iterator | rend () const |
template<class Archive > | |
void | serialize (Archive &ar, const unsigned int) |
Friends | |
BOOST_UBLAS_INLINE friend void | swap (scalar_vector &v1, scalar_vector &v2) |
T | type of the objects stored in the vector: it can be anything even if most of the time, scalar types will be used like double or int . Complex types can be used, or even classes like boost::interval. |