...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
unit_vector represents a canonical unit vector unit_vector represents a canonical unit vector. The k-th unit vector of dimension holds 0 for every value s.t. and 1 when . At construction, the value k is given after the dimension of the vector. More...
Inherits vector_container< unit_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 sparse_tag | storage_category |
typedef const_iterator | iterator |
typedef reverse_iterator_base < const_iterator > | const_reverse_iterator |
Public Member Functions | |
BOOST_UBLAS_INLINE | unit_vector () |
Simple constructor with dimension and index 0. | |
BOOST_UBLAS_INLINE | unit_vector (size_type size, size_type index=0) |
Constructor of unit_vector. | |
BOOST_UBLAS_INLINE | unit_vector (const unit_vector &v) |
Copy-constructor. | |
BOOST_UBLAS_INLINE size_type | size () const |
Return the size (dimension) of the vector. | |
BOOST_UBLAS_INLINE size_type | index () const |
Return the order of the unit vector. | |
BOOST_UBLAS_INLINE void | resize (size_type size, bool=true) |
Resize the vector. The values are preserved by default (i.e. the index does not change). | |
BOOST_UBLAS_INLINE const_pointer | find_element (size_type i) const |
Return a const pointer to the element of index i. | |
BOOST_UBLAS_INLINE const_reference | operator() (size_type i) const |
BOOST_UBLAS_INLINE const_reference | operator[] (size_type i) const |
BOOST_UBLAS_INLINE unit_vector & | operator= (const unit_vector &v) |
BOOST_UBLAS_INLINE unit_vector & | assign_temporary (unit_vector &v) |
BOOST_UBLAS_INLINE void | swap (unit_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 (unit_vector &v1, unit_vector &v2) |
T | is the type of elements in the vector. They must be 0 and 1 assignable in order for the vector to have its unit-vector semantic. | |
ALLOC | a specific allocator can be specified if needed. Most of the time this parameter is omited. |
BOOST_UBLAS_INLINE boost::numeric::ublas::unit_vector< T, ALLOC >::unit_vector | ( | size_type | size, | |
size_type | index = 0 | |||
) | [explicit] |
BOOST_UBLAS_INLINE void boost::numeric::ublas::unit_vector< T, ALLOC >::resize | ( | size_type | size, | |
bool | = true | |||
) |
size | is the new size of the vector |