PIP 5.6.1
Platform-Independent Primitives
Открытые члены | Полный список членов класса
Класс PIVector2D< T >::Row

Прокси-класс, представляющий одну строку в PIVector2D для модификации. Подробнее...

#include <pivector2d.h>

Граф наследования:PIVector2D< T >::Row:
Inheritance graph
[см. легенду]

Открытые члены

T & operator[] (size_t index)
 Доступ к элементу по заданному индексу столбца в строке. Подробнее...
 
T * data (size_t index=0)
 Возвращает указатель на данные строки, начиная с опционального смещения. Подробнее...
 
Rowoperator= (const Row &other)
 Присваивает этой строке содержимое другой строки. Подробнее...
 
Rowoperator= (const PIVector< T > &other)
 Присваивает этой строке содержимое PIVector. Подробнее...
 
void forEach (std::function< void(T &)> func)
 Применяет функцию к каждому элементу строки (с возможностью изменения). Подробнее...
 
void fill (const T &value)
 Заполняет строку копиями value. Подробнее...
 
const T * data (size_t index=0) const
 Возвращает константный указатель на данные строки, начиная с опционального смещения.
 
size_t size () const
 Размер строки (количество столбцов).
 
- Открытые члены унаследованные от PIVector2D< T >::RowConst
 RowConst (const PIVector2D< T >::Row &r)
 Конструктор копирования из модифицируемого класса Row в константный RowConst. Подробнее...
 
size_t size () const
 Размер строки (количество столбцов).
 
const T & operator[] (size_t index) const
 Константный доступ к элементу по заданному индексу столбца в строке.
 
const T * data (size_t index=0) const
 Возвращает константный указатель на данные строки, начиная с опционального смещения.
 
PIVector< T > toVector () const
 Преобразует строку в PIVector.
 
ssize_t indexOf (const T &e, ssize_t start=0) const
 Возвращает первый индекс элемента e в строке, начиная с позиции start. Подробнее...
 
ssize_t lastIndexOf (const T &e, ssize_t start=-1) const
 Возвращает последний индекс элемента e в строке, выполняя поиск в обратном направлении от start. Подробнее...
 
ssize_t indexWhere (std::function< bool(const T &e)> test, ssize_t start=0) const
 Возвращает первый индекс, для которого предикат test возвращает true, начиная с start. Подробнее...
 
ssize_t lastIndexWhere (std::function< bool(const T &e)> test, ssize_t start=-1) const
 Возвращает последний индекс, для которого предикат test возвращает true, выполняя поиск в обратном направлении от start. Подробнее...
 
void forEach (std::function< void(const T &)> func) const
 Применяет функцию к каждому элементу строки (только чтение). Подробнее...
 
bool contains (const T &e, ssize_t start=0) const
 Проверяет, содержит ли строка элемент e. Подробнее...
 
int entries (const T &e, ssize_t start=0) const
 Подсчитывает количество вхождений e в строке. Подробнее...
 
int entries (std::function< bool(const T &e)> test, ssize_t start=0) const
 Подсчитывает элементы в строке, проходящие test. Подробнее...
 
bool any (std::function< bool(const T &e)> test) const
 Проверяет, проходит ли какой-либо элемент в строке test. Подробнее...
 
bool every (std::function< bool(const T &e)> test) const
 Проверяет, проходят ли все элементы в строке test. Подробнее...
 

Подробное описание

template<typename T>
class PIVector2D< T >::Row

Прокси-класс, представляющий одну строку в PIVector2D для модификации.

Объекты этого класса возвращаются неконстантными операторами operator[] или методом row(). Они предоставляют доступ к элементам конкретной строки, подобный массиву, и позволяют выполнять такие операции, как присваивание из другой строки или PIVector, поиск, заполнение и итерацию.

См. также
Col, RowConst

Методы

◆ operator[]()

template<typename T >
T & PIVector2D< T >::Row::operator[] ( size_t  index)
inline

Доступ к элементу по заданному индексу столбца в строке.

Проверка границ не выполняется; используйте с осторожностью.

См. также
PIVector::operator[]

◆ data()

template<typename T >
T * PIVector2D< T >::Row::data ( size_t  index = 0)
inline

Возвращает указатель на данные строки, начиная с опционального смещения.

Указатель можно использовать для прямых операций с памятью. Он остаётся действительным, пока не произойдёт перераспределение памяти внутреннего двумерного массива.

См. также
PIVector::data()

◆ operator=() [1/2]

template<typename T >
Row & PIVector2D< T >::Row::operator= ( const Row other)
inline

Присваивает этой строке содержимое другой строки.

Копируется только минимум из размеров двух строк; если эта строка короче, лишние элементы из other игнорируются.

См. также
PIVector::operator=

◆ operator=() [2/2]

template<typename T >
Row & PIVector2D< T >::Row::operator= ( const PIVector< T > &  other)
inline

Присваивает этой строке содержимое PIVector.

Копируется только минимум из размера строки и размера вектора.

См. также
PIVector::operator=

◆ forEach()

template<typename T >
void PIVector2D< T >::Row::forEach ( std::function< void(T &)>  func)
inline

Применяет функцию к каждому элементу строки (с возможностью изменения).

Аргументы
funcFunction that takes a reference to T.

Функция может изменять элементы.

См. также
PIVector::forEach()

◆ fill()

template<typename T >
void PIVector2D< T >::Row::fill ( const T &  value)
inline

Заполняет строку копиями value.

См. также
PIVector::fill()