|
ConstValueType | at (uint i) const |
|
ConstValueType | atMod (uint i) const |
|
ConstValueType | front () const |
|
ConstValueType | back () const |
|
ConstPointer | data () const |
|
ConstIterator | find (const MakeConstPointer< T > &e) const |
|
ConstValueType | operator[] (uint i) const |
|
ConstValueType | operator() (uint i) const |
|
ConstIterator | begin () const |
|
ConstIterator | end () const |
|
| Vector ()=default |
| Creates an empty Vector object.
|
|
| Vector (std::size_t size, const T &value=T()) |
| Creates a Vector object with the specified size.
|
|
template<typename ItType > |
| Vector (ItType first, ItType last) |
| Constructs the container with the contents of the range [first, last).
|
|
template<Range RangeType> |
| Vector (RangeType &&rng) |
| Constructs the container with the contents of the range rng.
|
|
| Vector (std::initializer_list< T > list) |
| Constructs the container with the contents of the initializer list list .
|
|
Reference | at (uint i) |
| Access the specified element with bounds checking.
|
|
ConstReference | at (uint i) const |
| Access the specified element with bounds checking.
|
|
Reference | atMod (int i) |
| Access the specified element, computing first the module of the position w.r.t. the size of the container.
|
|
ConstReference | atMod (int i) const |
| Access the specified element, computing first the module of the position w.r.t. the size of the container.
|
|
Reference | back () |
| Access the last element of the Vector.
|
|
ConstReference | back () const |
| Access the last element of the Vector.
|
|
void | clear () |
| Remove all elements from the Vector.
|
|
bool | contains (const MakeConstPointerT< T > &e) const |
| Check if the Vector contains the specified element.
|
|
Pointer | data () |
| Returns a pointer to the underlying array serving as element storage. The pointer is such that range [data(), data() + size()) is always a valid range, even if the container is empty (data() is not dereferenceable in that case).
|
|
ConstPointer | data () const |
| Returns a const pointer to the underlying array serving as element storage. The pointer is such that range [data(), data() + size()) is always a valid range, even if the container is empty (data() is not dereferenceable in that case).
|
|
bool | empty () const noexcept |
| Returns whether the vector is empty (i.e. whether its size is 0).
|
|
void | erase (uint i) |
| Remove the element at the specified index from the Vector.
|
|
void | fill (const T &e) |
| Fill all elements of the Vector with the specified value.
|
|
Iterator | find (const MakeConstPointerT< T > &e) |
| Find the first occurrence of the specified element in the Vector.
|
|
ConstIterator | find (const MakeConstPointerT< T > &e) const |
| Find the first occurrence of the specified element in the Vector.
|
|
Reference | front () |
| Access the first element of the Vector.
|
|
ConstReference | front () const |
| Access the first element of the Vector.
|
|
uint | indexOf (const MakeConstPointerT< T > &e) const |
| Get the index of the first occurrence of the specified element in the Vector.
|
|
void | insert (uint i, const T &v) |
| Insert an element at the specified position in the Vector.
|
|
void | insert (uint i, T &&v) |
| Insert an element at the specified position in the Vector.
|
|
void | pushBack (const T &v) |
| Add an element to the end of the Vector.
|
|
void | pushBack (T &&v) |
| Add an element to the end of the Vector.
|
|
void | resize (uint n, const T &v=T()) |
| Resize the Vector to the specified size.
|
|
void | set (uint i, const T &e) |
| Set the value of the element at the specified position.
|
|
void | set (uint i, T &&e) |
| Set the value of the element at the specified position.
|
|
void | set (ConstIterator it, const T &e) |
| Set the value of the element at the specified position.
|
|
void | set (ConstIterator it, T &&e) |
| Set the value of the element at the specified position.
|
|
template<Range Rng>
requires InputRange<Rng, T> |
void | set (Rng &&r) |
| Set the elements of the Vector using the values from a range.
|
|
std::size_t | size () const |
| Returns the size of the container.
|
|
void | swap (Vector &other) |
| Swaps the contents of the container with those of other.
|
|
Iterator | begin () |
| Return an iterator pointing to the beginning of the Vector.
|
|
ConstIterator | begin () const |
| Return a const iterator pointing to the beginning of the Vector.
|
|
Iterator | end () |
| Return an iterator pointing to the end of the Vector.
|
|
ConstIterator | end () const |
| Return a const iterator pointing to the end of the Vector.
|
|
|
using | ValueType = Container::value_type |
| The type of the elements stored in the Vector.
|
|
using | ConstReference = Container::const_reference |
| A const reference to the type of the elements stored in the Vector.
|
|
using | Reference = Container::reference |
| A reference to the type of the elements stored in the Vector.
|
|
using | ConstPointer = Container::const_pointer |
| A const pointer to the type of the elements stored in the Vector.
|
|
using | Pointer = Container::pointer |
| A pointer to the type of the elements stored in the Vector.
|
|
using | Iterator = Container::iterator |
| An iterator to the elements of the Vector.
|
|
using | ConstIterator = Container::const_iterator |
| A const iterator to the elements of the Vector.
|
|
| Vector ()=default |
| Creates an empty Vector object.
|
|
| Vector (std::size_t size, const T &value=T()) |
| Creates a Vector object with the specified size.
|
|
template<typename ItType > |
| Vector (ItType first, ItType last) |
| Constructs the container with the contents of the range [first, last).
|
|
template<Range RangeType> |
| Vector (RangeType &&rng) |
| Constructs the container with the contents of the range rng.
|
|
| Vector (std::initializer_list< T > list) |
| Constructs the container with the contents of the initializer list list .
|
|
std::size_t | size () const |
| Returns the size of the container.
|
|
Reference | at (uint i) |
| Access the specified element with bounds checking.
|
|
ConstReference | at (uint i) const |
| Access the specified element with bounds checking.
|
|
Reference | atMod (int i) |
| Access the specified element, computing first the module of the position w.r.t. the size of the container.
|
|
ConstReference | atMod (int i) const |
| Access the specified element, computing first the module of the position w.r.t. the size of the container.
|
|
Reference | front () |
| Access the first element of the Vector.
|
|
ConstReference | front () const |
| Access the first element of the Vector.
|
|
Reference | back () |
| Access the last element of the Vector.
|
|
ConstReference | back () const |
| Access the last element of the Vector.
|
|
Pointer | data () |
| Returns a pointer to the underlying array serving as element storage. The pointer is such that range [data(), data() + size()) is always a valid range, even if the container is empty (data() is not dereferenceable in that case).
|
|
ConstPointer | data () const |
| Returns a const pointer to the underlying array serving as element storage. The pointer is such that range [data(), data() + size()) is always a valid range, even if the container is empty (data() is not dereferenceable in that case).
|
|
void | set (uint i, const T &e) |
| Set the value of the element at the specified position.
|
|
void | set (uint i, T &&e) |
| Set the value of the element at the specified position.
|
|
void | set (ConstIterator it, const T &e) |
| Set the value of the element at the specified position.
|
|
void | set (ConstIterator it, T &&e) |
| Set the value of the element at the specified position.
|
|
template<Range Rng>
requires InputRange<Rng, T> |
void | set (Rng &&r) |
| Set the elements of the Vector using the values from a range.
|
|
void | fill (const T &e) |
| Fill all elements of the Vector with the specified value.
|
|
bool | contains (const MakeConstPointerT< T > &e) const |
| Check if the Vector contains the specified element.
|
|
Iterator | find (const MakeConstPointerT< T > &e) |
| Find the first occurrence of the specified element in the Vector.
|
|
ConstIterator | find (const MakeConstPointerT< T > &e) const |
| Find the first occurrence of the specified element in the Vector.
|
|
uint | indexOf (const MakeConstPointerT< T > &e) const |
| Get the index of the first occurrence of the specified element in the Vector.
|
|
void | swap (Vector &other) |
| Swaps the contents of the container with those of other.
|
|
void | resize (uint n, const T &v=T()) |
| Resize the Vector to the specified size.
|
|
void | pushBack (const T &v) |
| Add an element to the end of the Vector.
|
|
void | pushBack (T &&v) |
| Add an element to the end of the Vector.
|
|
void | insert (uint i, const T &v) |
| Insert an element at the specified position in the Vector.
|
|
void | insert (uint i, T &&v) |
| Insert an element at the specified position in the Vector.
|
|
template<typename... Args>
requires (N < 0) |
void | emplace (uint i, Args &&... args) |
| Insert an element at the specified position in the Vector.
|
|
bool | empty () const noexcept |
| Returns whether the vector is empty (i.e. whether its size is 0).
|
|
void | erase (uint i) |
| Remove the element at the specified index from the Vector.
|
|
void | clear () |
| Remove all elements from the Vector.
|
|
void | serialize (std::ostream &os) const |
|
void | deserialize (std::istream &is) |
|
Reference | operator[] (uint i) |
| Returns a reference to the element at specified location i. No bounds checking is performed.
|
|
ConstReference | operator[] (uint i) const |
| Returns a const reference to the element at specified location i. No bounds checking is performed.
|
|
Reference | operator() (uint i) |
| Returns a reference to the element at specified location i. No bounds checking is performed.
|
|
ConstReference | operator() (uint i) const |
| Returns a const reference to the element at specified location i. No bounds checking is performed.
|
|
Iterator | begin () |
| Return an iterator pointing to the beginning of the Vector.
|
|
Iterator | end () |
| Return an iterator pointing to the end of the Vector.
|
|
ConstIterator | begin () const |
| Return a const iterator pointing to the beginning of the Vector.
|
|
ConstIterator | end () const |
| Return a const iterator pointing to the end of the Vector.
|
|
Container | mContainer |
|
static const int | SIZE = N |
| Size of the vector at compile time. It will be -1 if the Vector has dynamic size.
|
|
template<IsAnyPointer T,
int N = -1>
class vcl::PointerVector< T, N >
The PointerVector
class is a utility container that stores a sequence of pointers that preserve their constness when the container is constant.
It is a wrapper around the Vector
class, and it provides the same interface. The main difference is that the PointerVector
class is designed to store pointers that, when accessed from the const container, are returned as const pointers. This is useful when you want to store a sequence of objects that are not owned by the container, and you want to ensure that the objects are not modified through the container when the container is const.
For example:
std::vector<int*> v;
const std::vector<int*>&
refV = v;
*p1 = 42;
A class representing a line segment in n-dimensional space. The class is parameterized by a PointConc...
Definition segment.h:43
- Template Parameters
-
T | the type of the objects stored in the container. It must be a pointer type. |
N | the size of the container. If N is greater than or equal to zero, the container will have a fixed size of N elements, and it will use an array to store the elements. If N is less than zero, the container will have a dynamic size, and it will use a vector to store the elements. |