...one of the most highly
regarded and expertly designed C++ library projects in the
world.
— Herb Sutter and Andrei
Alexandrescu, C++
Coding Standards
A type that can hold elements in this collection with value semantics.
using value_type = row;
Name |
Description |
---|---|
A random access iterator to an element. |
|
The reference type. |
|
A signed integer type used to represent differences. |
|
A random access iterator to an element. |
|
The reference type. |
|
An unsigned integer type to represent sizes. |
|
A type that can hold elements in this collection with value semantics. |
Name |
Description |
---|---|
Converts the row into a |
|
Returns the i-th element in the row or throws an exception. |
|
Returns the last element in the row. |
|
Returns an iterator to the first field in the row. |
|
Returns true if there are no fields in the row (i.e. |
|
Returns an iterator to one-past-the-last field in the row. |
|
Returns the first element in the row. |
|
Copy assignment. |
|
Returns the i-th element in the row (unchecked access). |
|
Creates a |
|
Constructs an empty row. |
|
Returns the number of fields in the row. |
|
~row [destructor] |
Destructor. |
Name |
Description |
---|---|
Equality operator. |
|
Inequality operator. |
Although owning, row
is
read-only. It's optimized for memory re-use. If you need to mutate fields,
use a std::vector<field>
instead (see row_view::as_vector
and row::as_vector
).
A row
object owns a chunk
of memory in which it stores its elements. On element access (using iterators,
row::at
or row::operator[]
)
it returns field_view
's pointing into the
row
's internal storage.
These views behave like references, and are valid as long as pointers,
iterators and references into the row
remain valid.
Note that element accesors (like rows_view::operator[]
)
return reference
objects instead of
value_type
objects. You
can use this type if you need an owning class.